| Index: common/logdog/protocol/butler.proto
|
| diff --git a/common/logdog/protocol/butler.proto b/common/logdog/protocol/butler.proto
|
| index aaea291e03fa96f3142f0eb4a3291c386823da7f..0faa9619180161032ada78cae74a36c91eead91f 100644
|
| --- a/common/logdog/protocol/butler.proto
|
| +++ b/common/logdog/protocol/butler.proto
|
| @@ -8,6 +8,26 @@ import "log.proto";
|
| import "types.proto";
|
|
|
| /*
|
| + * ButlerMetadata appears as a frame at the beginning of Butler published data
|
| + * to describe the remainder of the contents.
|
| + */
|
| +message ButlerMetadata {
|
| + /*
|
| + * This enumerates the possible contents of published Butler data.
|
| + */
|
| + enum ContentType {
|
| + /* The published data is a ButlerLogBundle protobuf message. */
|
| + ButlerLogBundle = 1;
|
| + }
|
| + /* This is the type of data in the subsequent frame. */
|
| + optional ContentType type = 1;
|
| +
|
| + /* If true, the content data is compressed. */
|
| + optional bool compressed = 2;
|
| +}
|
| +
|
| +
|
| +/*
|
| * A message containing log data in transit from the Butler.
|
| *
|
| * The Butler is capable of conserving bandwidth by bundling collected log
|
| @@ -36,6 +56,22 @@ message ButlerLogBundle {
|
| optional Timestamp timestamp = 2;
|
|
|
| /*
|
| + * The log prefix's secret value (required).
|
| + *
|
| + * The secret is generated by the Butler and unique to this specific log
|
| + * stream. The Coordinator will record the secret associated with a given
|
| + * log Prefix/Stream, but will not share the secret with a client.
|
| + *
|
| + * The Collector will check the secret prior to ingesting logs. If the
|
| + * secret doesn't match the value recorded by the Coordinator, the log
|
| + * will be discarded.
|
| + *
|
| + * This ensures that only the Butler instance that generated the log stream
|
| + * can emit log data for that stream.
|
| + */
|
| + optional bytes secret = 3;
|
| +
|
| + /*
|
| * A bundle Entry describes a set of LogEntry messages originating from the
|
| * same log stream.
|
| */
|
| @@ -48,22 +84,6 @@ message ButlerLogBundle {
|
| optional LogStreamDescriptor desc = 1;
|
|
|
| /*
|
| - * The log stream's secret value (required).
|
| - *
|
| - * The secret is generated by the Butler and unique to this specific log
|
| - * stream. The Coordinator will record the secret associated with a given
|
| - * log Prefix/Stream, but will not share the secret with a client.
|
| - *
|
| - * The Collector will check the secret prior to ingesting logs. If the
|
| - * secret doesn't match the value recorded by the Coordinator, the log
|
| - * will be discarded.
|
| - *
|
| - * This ensures that only the Butler instance that generated the log stream
|
| - * can emit log data for that stream.
|
| - */
|
| - optional bytes secret = 2;
|
| -
|
| - /*
|
| * Whether this log entry terminates its stream.
|
| *
|
| * If present and "true", this field declares that this Entry is the last
|
| @@ -78,16 +98,22 @@ message ButlerLogBundle {
|
| optional bool terminal = 3;
|
|
|
| /*
|
| + * If terminal is true, this is the terminal stream index; that is, the last
|
| + * message index in the stream.
|
| + */
|
| + optional uint32 terminal_index = 4;
|
| +
|
| + /*
|
| * Log entries attached to this record. These must be sequential and in
|
| * order.
|
| *
|
| * This is the main log entry content.
|
| */
|
| - repeated protocol.LogEntry logs = 4;
|
| + repeated protocol.LogEntry logs = 5;
|
| }
|
|
|
| /**
|
| * Each Entry is an individual set of log records for a given log stream.
|
| */
|
| - repeated Entry entries = 5;
|
| + repeated Entry entries = 4;
|
| }
|
|
|