| OLD | NEW |
| (Empty) |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 // Package butlerproto implements the LogDog Butler wire protocol. This protocol | |
| 6 // wraps Butler messages that are published to Cloud Pub/Sub for LogDog | |
| 7 // consumption. | |
| 8 // | |
| 9 // The protocol begins with a set of header bytes to identify and parameterize | |
| 10 // the remaining data, followed by the data itself. | |
| 11 // | |
| 12 // Note that the Pub/Sub layer is assumed to provide both a total length (so no | |
| 13 // need to length-prefix) and integrity (so no need to checksum). | |
| 14 // | |
| 15 // Header | |
| 16 // | |
| 17 // The header is a fixed four bytes which positively identify the message as a | |
| 18 // Butler Pub/Sub message and describe the remaining data. Variant parameters | |
| 19 // can use different magic numbers to identify different parameters. | |
| 20 // | |
| 21 // Two magic numbers are currently defined: | |
| 22 // - 0x10 0x6d 0x06 0x00 (LogDog protocol ButlerLogBundle Raw) | |
| 23 // - 0x10 0x6d 0x06 0x62 (LogDog protocol ButlerLogBundle GZip compressed) | |
| 24 // | |
| 25 // Data | |
| 26 // | |
| 27 // The data component is described by the header, and consists of all data in | |
| 28 // the Pub/Sub message past the last header byte. | |
| 29 package butlerproto | |
| OLD | NEW |