go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/logdog/api/logpb/log.pb.go (about)

     1  // Copyright 2015 The LUCI Authors. All rights reserved.
     2  // Use of this source code is governed under the Apache License, Version 2.0
     3  // that can be found in the LICENSE file.
     4  
     5  // Code generated by protoc-gen-go. DO NOT EDIT.
     6  // versions:
     7  // 	protoc-gen-go v1.31.0
     8  // 	protoc        v3.21.7
     9  // source: go.chromium.org/luci/logdog/api/logpb/log.proto
    10  
    11  package logpb
    12  
    13  import (
    14  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    15  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    16  	durationpb "google.golang.org/protobuf/types/known/durationpb"
    17  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    18  	reflect "reflect"
    19  	sync "sync"
    20  )
    21  
    22  const (
    23  	// Verify that this generated code is sufficiently up-to-date.
    24  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    25  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    26  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    27  )
    28  
    29  // A log stream type.
    30  type StreamType int32
    31  
    32  const (
    33  	StreamType_TEXT     StreamType = 0
    34  	StreamType_BINARY   StreamType = 1
    35  	StreamType_DATAGRAM StreamType = 2
    36  )
    37  
    38  // Enum value maps for StreamType.
    39  var (
    40  	StreamType_name = map[int32]string{
    41  		0: "TEXT",
    42  		1: "BINARY",
    43  		2: "DATAGRAM",
    44  	}
    45  	StreamType_value = map[string]int32{
    46  		"TEXT":     0,
    47  		"BINARY":   1,
    48  		"DATAGRAM": 2,
    49  	}
    50  )
    51  
    52  func (x StreamType) Enum() *StreamType {
    53  	p := new(StreamType)
    54  	*p = x
    55  	return p
    56  }
    57  
    58  func (x StreamType) String() string {
    59  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    60  }
    61  
    62  func (StreamType) Descriptor() protoreflect.EnumDescriptor {
    63  	return file_go_chromium_org_luci_logdog_api_logpb_log_proto_enumTypes[0].Descriptor()
    64  }
    65  
    66  func (StreamType) Type() protoreflect.EnumType {
    67  	return &file_go_chromium_org_luci_logdog_api_logpb_log_proto_enumTypes[0]
    68  }
    69  
    70  func (x StreamType) Number() protoreflect.EnumNumber {
    71  	return protoreflect.EnumNumber(x)
    72  }
    73  
    74  // Deprecated: Use StreamType.Descriptor instead.
    75  func (StreamType) EnumDescriptor() ([]byte, []int) {
    76  	return file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescGZIP(), []int{0}
    77  }
    78  
    79  // *
    80  // Log stream descriptor data. This is the full set of information that
    81  // describes a logging stream.
    82  type LogStreamDescriptor struct {
    83  	state         protoimpl.MessageState
    84  	sizeCache     protoimpl.SizeCache
    85  	unknownFields protoimpl.UnknownFields
    86  
    87  	// The stream's prefix (required).
    88  	//
    89  	// Logs originating from the same Butler instance will share a Prefix.
    90  	//
    91  	// A valid prefix value is a StreamName described in:
    92  	// https://go.chromium.org/luci/logdog/common/types#StreamName
    93  	Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
    94  	// The log stream's name (required).
    95  	//
    96  	// This is used to uniquely identify a log stream within the scope of its
    97  	// prefix.
    98  	//
    99  	// A valid name value is a StreamName described in:
   100  	// https://go.chromium.org/luci/logdog/common/types#StreamName
   101  	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
   102  	// The log stream's content type (required).
   103  	StreamType StreamType `protobuf:"varint,3,opt,name=stream_type,json=streamType,proto3,enum=logpb.StreamType" json:"stream_type,omitempty"`
   104  	// The stream's content type (required).
   105  	//
   106  	// This must be an HTTP Content-Type value. Begins with MIME media type; may
   107  	// include a charset directive. It is made available to LogDog clients when
   108  	// querying stream metadata. It will also be applied to archived binary log
   109  	// data.
   110  	ContentType string `protobuf:"bytes,4,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
   111  	// The log stream's base timestamp (required).
   112  	//
   113  	// This notes the start time of the log stream. All LogEntries express their
   114  	// timestamp as microsecond offsets from this field.
   115  	Timestamp *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
   116  	// Tag is an arbitrary key/value tag associated with this log stream.
   117  	//
   118  	// LogDog clients can query for log streams based on tag values.
   119  	Tags map[string]string `protobuf:"bytes,6,rep,name=tags,proto3" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   120  	// If set, the stream will be joined together during archival to recreate the
   121  	// original stream and made available at <prefix>/+/<name>.ext.
   122  	BinaryFileExt string `protobuf:"bytes,7,opt,name=binary_file_ext,json=binaryFileExt,proto3" json:"binary_file_ext,omitempty"`
   123  }
   124  
   125  func (x *LogStreamDescriptor) Reset() {
   126  	*x = LogStreamDescriptor{}
   127  	if protoimpl.UnsafeEnabled {
   128  		mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[0]
   129  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   130  		ms.StoreMessageInfo(mi)
   131  	}
   132  }
   133  
   134  func (x *LogStreamDescriptor) String() string {
   135  	return protoimpl.X.MessageStringOf(x)
   136  }
   137  
   138  func (*LogStreamDescriptor) ProtoMessage() {}
   139  
   140  func (x *LogStreamDescriptor) ProtoReflect() protoreflect.Message {
   141  	mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[0]
   142  	if protoimpl.UnsafeEnabled && x != nil {
   143  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   144  		if ms.LoadMessageInfo() == nil {
   145  			ms.StoreMessageInfo(mi)
   146  		}
   147  		return ms
   148  	}
   149  	return mi.MessageOf(x)
   150  }
   151  
   152  // Deprecated: Use LogStreamDescriptor.ProtoReflect.Descriptor instead.
   153  func (*LogStreamDescriptor) Descriptor() ([]byte, []int) {
   154  	return file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescGZIP(), []int{0}
   155  }
   156  
   157  func (x *LogStreamDescriptor) GetPrefix() string {
   158  	if x != nil {
   159  		return x.Prefix
   160  	}
   161  	return ""
   162  }
   163  
   164  func (x *LogStreamDescriptor) GetName() string {
   165  	if x != nil {
   166  		return x.Name
   167  	}
   168  	return ""
   169  }
   170  
   171  func (x *LogStreamDescriptor) GetStreamType() StreamType {
   172  	if x != nil {
   173  		return x.StreamType
   174  	}
   175  	return StreamType_TEXT
   176  }
   177  
   178  func (x *LogStreamDescriptor) GetContentType() string {
   179  	if x != nil {
   180  		return x.ContentType
   181  	}
   182  	return ""
   183  }
   184  
   185  func (x *LogStreamDescriptor) GetTimestamp() *timestamppb.Timestamp {
   186  	if x != nil {
   187  		return x.Timestamp
   188  	}
   189  	return nil
   190  }
   191  
   192  func (x *LogStreamDescriptor) GetTags() map[string]string {
   193  	if x != nil {
   194  		return x.Tags
   195  	}
   196  	return nil
   197  }
   198  
   199  func (x *LogStreamDescriptor) GetBinaryFileExt() string {
   200  	if x != nil {
   201  		return x.BinaryFileExt
   202  	}
   203  	return ""
   204  }
   205  
   206  // Text stream content.
   207  type Text struct {
   208  	state         protoimpl.MessageState
   209  	sizeCache     protoimpl.SizeCache
   210  	unknownFields protoimpl.UnknownFields
   211  
   212  	Lines []*Text_Line `protobuf:"bytes,1,rep,name=lines,proto3" json:"lines,omitempty"`
   213  }
   214  
   215  func (x *Text) Reset() {
   216  	*x = Text{}
   217  	if protoimpl.UnsafeEnabled {
   218  		mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[1]
   219  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   220  		ms.StoreMessageInfo(mi)
   221  	}
   222  }
   223  
   224  func (x *Text) String() string {
   225  	return protoimpl.X.MessageStringOf(x)
   226  }
   227  
   228  func (*Text) ProtoMessage() {}
   229  
   230  func (x *Text) ProtoReflect() protoreflect.Message {
   231  	mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[1]
   232  	if protoimpl.UnsafeEnabled && x != nil {
   233  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   234  		if ms.LoadMessageInfo() == nil {
   235  			ms.StoreMessageInfo(mi)
   236  		}
   237  		return ms
   238  	}
   239  	return mi.MessageOf(x)
   240  }
   241  
   242  // Deprecated: Use Text.ProtoReflect.Descriptor instead.
   243  func (*Text) Descriptor() ([]byte, []int) {
   244  	return file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescGZIP(), []int{1}
   245  }
   246  
   247  func (x *Text) GetLines() []*Text_Line {
   248  	if x != nil {
   249  		return x.Lines
   250  	}
   251  	return nil
   252  }
   253  
   254  // Binary stream content.
   255  type Binary struct {
   256  	state         protoimpl.MessageState
   257  	sizeCache     protoimpl.SizeCache
   258  	unknownFields protoimpl.UnknownFields
   259  
   260  	// The binary stream's data.
   261  	Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
   262  }
   263  
   264  func (x *Binary) Reset() {
   265  	*x = Binary{}
   266  	if protoimpl.UnsafeEnabled {
   267  		mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[2]
   268  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   269  		ms.StoreMessageInfo(mi)
   270  	}
   271  }
   272  
   273  func (x *Binary) String() string {
   274  	return protoimpl.X.MessageStringOf(x)
   275  }
   276  
   277  func (*Binary) ProtoMessage() {}
   278  
   279  func (x *Binary) ProtoReflect() protoreflect.Message {
   280  	mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[2]
   281  	if protoimpl.UnsafeEnabled && x != nil {
   282  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   283  		if ms.LoadMessageInfo() == nil {
   284  			ms.StoreMessageInfo(mi)
   285  		}
   286  		return ms
   287  	}
   288  	return mi.MessageOf(x)
   289  }
   290  
   291  // Deprecated: Use Binary.ProtoReflect.Descriptor instead.
   292  func (*Binary) Descriptor() ([]byte, []int) {
   293  	return file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescGZIP(), []int{2}
   294  }
   295  
   296  func (x *Binary) GetData() []byte {
   297  	if x != nil {
   298  		return x.Data
   299  	}
   300  	return nil
   301  }
   302  
   303  // Datagram stream content type.
   304  type Datagram struct {
   305  	state         protoimpl.MessageState
   306  	sizeCache     protoimpl.SizeCache
   307  	unknownFields protoimpl.UnknownFields
   308  
   309  	// This datagram data.
   310  	Data    []byte            `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
   311  	Partial *Datagram_Partial `protobuf:"bytes,2,opt,name=partial,proto3" json:"partial,omitempty"`
   312  }
   313  
   314  func (x *Datagram) Reset() {
   315  	*x = Datagram{}
   316  	if protoimpl.UnsafeEnabled {
   317  		mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[3]
   318  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   319  		ms.StoreMessageInfo(mi)
   320  	}
   321  }
   322  
   323  func (x *Datagram) String() string {
   324  	return protoimpl.X.MessageStringOf(x)
   325  }
   326  
   327  func (*Datagram) ProtoMessage() {}
   328  
   329  func (x *Datagram) ProtoReflect() protoreflect.Message {
   330  	mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[3]
   331  	if protoimpl.UnsafeEnabled && x != nil {
   332  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   333  		if ms.LoadMessageInfo() == nil {
   334  			ms.StoreMessageInfo(mi)
   335  		}
   336  		return ms
   337  	}
   338  	return mi.MessageOf(x)
   339  }
   340  
   341  // Deprecated: Use Datagram.ProtoReflect.Descriptor instead.
   342  func (*Datagram) Descriptor() ([]byte, []int) {
   343  	return file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescGZIP(), []int{3}
   344  }
   345  
   346  func (x *Datagram) GetData() []byte {
   347  	if x != nil {
   348  		return x.Data
   349  	}
   350  	return nil
   351  }
   352  
   353  func (x *Datagram) GetPartial() *Datagram_Partial {
   354  	if x != nil {
   355  		return x.Partial
   356  	}
   357  	return nil
   358  }
   359  
   360  // *
   361  // An individual log entry.
   362  //
   363  // This contains the superset of transmissible log data. Its content fields
   364  // should be interpreted in the context of the log stream's content type.
   365  type LogEntry struct {
   366  	state         protoimpl.MessageState
   367  	sizeCache     protoimpl.SizeCache
   368  	unknownFields protoimpl.UnknownFields
   369  
   370  	// The stream time offset for this content.
   371  	//
   372  	// This offset is added to the log stream's base "timestamp" to resolve the
   373  	// timestamp for this specific Content.
   374  	TimeOffset *durationpb.Duration `protobuf:"bytes,1,opt,name=time_offset,json=timeOffset,proto3" json:"time_offset,omitempty"`
   375  	// The message index within the Prefix (required).
   376  	//
   377  	// This is value is unique to this LogEntry across the entire set of entries
   378  	// sharing the stream's Prefix. It is used to designate unambiguous log
   379  	// ordering.
   380  	PrefixIndex uint64 `protobuf:"varint,2,opt,name=prefix_index,json=prefixIndex,proto3" json:"prefix_index,omitempty"`
   381  	// The message index within its Stream (required).
   382  	//
   383  	// This value is unique across all entries sharing the same Prefix and Stream
   384  	// Name. It is used to designate unambiguous log ordering within the stream.
   385  	StreamIndex uint64 `protobuf:"varint,3,opt,name=stream_index,json=streamIndex,proto3" json:"stream_index,omitempty"`
   386  	// The sequence number of the first content entry in this LogEntry.
   387  	//
   388  	// Text: This is the line index of the first included line. Line indices begin
   389  	//
   390  	//	at zero.
   391  	//
   392  	// Binary: This is the byte offset of the first byte in the included data.
   393  	// Datagram: This is the index of the datagram. The first datagram has index
   394  	//
   395  	//	zero.
   396  	Sequence uint64 `protobuf:"varint,4,opt,name=sequence,proto3" json:"sequence,omitempty"`
   397  	// The content of the message. The field that is populated here must
   398  	// match the log's `stream_type`.
   399  	//
   400  	// Types that are assignable to Content:
   401  	//
   402  	//	*LogEntry_Text
   403  	//	*LogEntry_Binary
   404  	//	*LogEntry_Datagram
   405  	Content isLogEntry_Content `protobuf_oneof:"content"`
   406  }
   407  
   408  func (x *LogEntry) Reset() {
   409  	*x = LogEntry{}
   410  	if protoimpl.UnsafeEnabled {
   411  		mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[4]
   412  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   413  		ms.StoreMessageInfo(mi)
   414  	}
   415  }
   416  
   417  func (x *LogEntry) String() string {
   418  	return protoimpl.X.MessageStringOf(x)
   419  }
   420  
   421  func (*LogEntry) ProtoMessage() {}
   422  
   423  func (x *LogEntry) ProtoReflect() protoreflect.Message {
   424  	mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[4]
   425  	if protoimpl.UnsafeEnabled && x != nil {
   426  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   427  		if ms.LoadMessageInfo() == nil {
   428  			ms.StoreMessageInfo(mi)
   429  		}
   430  		return ms
   431  	}
   432  	return mi.MessageOf(x)
   433  }
   434  
   435  // Deprecated: Use LogEntry.ProtoReflect.Descriptor instead.
   436  func (*LogEntry) Descriptor() ([]byte, []int) {
   437  	return file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescGZIP(), []int{4}
   438  }
   439  
   440  func (x *LogEntry) GetTimeOffset() *durationpb.Duration {
   441  	if x != nil {
   442  		return x.TimeOffset
   443  	}
   444  	return nil
   445  }
   446  
   447  func (x *LogEntry) GetPrefixIndex() uint64 {
   448  	if x != nil {
   449  		return x.PrefixIndex
   450  	}
   451  	return 0
   452  }
   453  
   454  func (x *LogEntry) GetStreamIndex() uint64 {
   455  	if x != nil {
   456  		return x.StreamIndex
   457  	}
   458  	return 0
   459  }
   460  
   461  func (x *LogEntry) GetSequence() uint64 {
   462  	if x != nil {
   463  		return x.Sequence
   464  	}
   465  	return 0
   466  }
   467  
   468  func (m *LogEntry) GetContent() isLogEntry_Content {
   469  	if m != nil {
   470  		return m.Content
   471  	}
   472  	return nil
   473  }
   474  
   475  func (x *LogEntry) GetText() *Text {
   476  	if x, ok := x.GetContent().(*LogEntry_Text); ok {
   477  		return x.Text
   478  	}
   479  	return nil
   480  }
   481  
   482  func (x *LogEntry) GetBinary() *Binary {
   483  	if x, ok := x.GetContent().(*LogEntry_Binary); ok {
   484  		return x.Binary
   485  	}
   486  	return nil
   487  }
   488  
   489  func (x *LogEntry) GetDatagram() *Datagram {
   490  	if x, ok := x.GetContent().(*LogEntry_Datagram); ok {
   491  		return x.Datagram
   492  	}
   493  	return nil
   494  }
   495  
   496  type isLogEntry_Content interface {
   497  	isLogEntry_Content()
   498  }
   499  
   500  type LogEntry_Text struct {
   501  	// Text Stream: Lines of log text.
   502  	Text *Text `protobuf:"bytes,10,opt,name=text,proto3,oneof"`
   503  }
   504  
   505  type LogEntry_Binary struct {
   506  	// Binary stream: data segment.
   507  	Binary *Binary `protobuf:"bytes,11,opt,name=binary,proto3,oneof"`
   508  }
   509  
   510  type LogEntry_Datagram struct {
   511  	// Datagram stream: Datagrams.
   512  	Datagram *Datagram `protobuf:"bytes,12,opt,name=datagram,proto3,oneof"`
   513  }
   514  
   515  func (*LogEntry_Text) isLogEntry_Content() {}
   516  
   517  func (*LogEntry_Binary) isLogEntry_Content() {}
   518  
   519  func (*LogEntry_Datagram) isLogEntry_Content() {}
   520  
   521  // *
   522  // LogIndex is an index into an at-rest log storage.
   523  //
   524  // The log stream and log index are generated by the Archivist during archival.
   525  //
   526  // An archived log stream is a series of contiguous LogEntry frames. The index
   527  // maps a log's logical logation in its stream, prefix, and timeline to its
   528  // frame's binary offset in the archived log stream blob.
   529  type LogIndex struct {
   530  	state         protoimpl.MessageState
   531  	sizeCache     protoimpl.SizeCache
   532  	unknownFields protoimpl.UnknownFields
   533  
   534  	// The LogStreamDescriptor for this log stream (required).
   535  	//
   536  	// The index stores the stream's LogStreamDescriptor so that a client can
   537  	// know the full set of log metadata by downloading its index.
   538  	Desc *LogStreamDescriptor `protobuf:"bytes,1,opt,name=desc,proto3" json:"desc,omitempty"`
   539  	// A series of ascending-ordered Entry messages representing snapshots of an
   540  	// archived log stream.
   541  	//
   542  	// Within this set of Entry messages, the "offset", "prefix_index",
   543  	// "stream_index", and "time_offset" fields will be ascending.
   544  	//
   545  	// The frequency of Entry messages is not defined; it is up to the Archivist
   546  	// process to choose a frequency.
   547  	Entries []*LogIndex_Entry `protobuf:"bytes,2,rep,name=entries,proto3" json:"entries,omitempty"`
   548  	// *
   549  	// The last prefix index in the log stream.
   550  	//
   551  	// This is optional. If zero, there is either no information about the last
   552  	// prefix index, or there are zero entries in the prefix.
   553  	LastPrefixIndex uint64 `protobuf:"varint,3,opt,name=last_prefix_index,json=lastPrefixIndex,proto3" json:"last_prefix_index,omitempty"`
   554  	// *
   555  	// The last stream index in the log stream.
   556  	//
   557  	// This is optional. If zero, there is either no information about the last
   558  	// stream index, or there are zero entries in the stream.
   559  	LastStreamIndex uint64 `protobuf:"varint,4,opt,name=last_stream_index,json=lastStreamIndex,proto3" json:"last_stream_index,omitempty"`
   560  	// *
   561  	// The number of log entries in the stream.
   562  	//
   563  	// This is optional. If zero, there is either no information about the number
   564  	// of log entries, or there are zero entries in the stream.
   565  	LogEntryCount uint64 `protobuf:"varint,5,opt,name=log_entry_count,json=logEntryCount,proto3" json:"log_entry_count,omitempty"`
   566  }
   567  
   568  func (x *LogIndex) Reset() {
   569  	*x = LogIndex{}
   570  	if protoimpl.UnsafeEnabled {
   571  		mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[5]
   572  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   573  		ms.StoreMessageInfo(mi)
   574  	}
   575  }
   576  
   577  func (x *LogIndex) String() string {
   578  	return protoimpl.X.MessageStringOf(x)
   579  }
   580  
   581  func (*LogIndex) ProtoMessage() {}
   582  
   583  func (x *LogIndex) ProtoReflect() protoreflect.Message {
   584  	mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[5]
   585  	if protoimpl.UnsafeEnabled && x != nil {
   586  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   587  		if ms.LoadMessageInfo() == nil {
   588  			ms.StoreMessageInfo(mi)
   589  		}
   590  		return ms
   591  	}
   592  	return mi.MessageOf(x)
   593  }
   594  
   595  // Deprecated: Use LogIndex.ProtoReflect.Descriptor instead.
   596  func (*LogIndex) Descriptor() ([]byte, []int) {
   597  	return file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescGZIP(), []int{5}
   598  }
   599  
   600  func (x *LogIndex) GetDesc() *LogStreamDescriptor {
   601  	if x != nil {
   602  		return x.Desc
   603  	}
   604  	return nil
   605  }
   606  
   607  func (x *LogIndex) GetEntries() []*LogIndex_Entry {
   608  	if x != nil {
   609  		return x.Entries
   610  	}
   611  	return nil
   612  }
   613  
   614  func (x *LogIndex) GetLastPrefixIndex() uint64 {
   615  	if x != nil {
   616  		return x.LastPrefixIndex
   617  	}
   618  	return 0
   619  }
   620  
   621  func (x *LogIndex) GetLastStreamIndex() uint64 {
   622  	if x != nil {
   623  		return x.LastStreamIndex
   624  	}
   625  	return 0
   626  }
   627  
   628  func (x *LogIndex) GetLogEntryCount() uint64 {
   629  	if x != nil {
   630  		return x.LogEntryCount
   631  	}
   632  	return 0
   633  }
   634  
   635  // Contiguous text lines and their delimiters.
   636  //
   637  // The array of lines follows the following pattern:
   638  //   - 0 or 1 completion lines completing the last LogEntry's Text (i.e. with
   639  //     a delimiter but not itself the full line)
   640  //   - any number of complete lines (i.e. with delimiter, each its own line)
   641  //   - 0 or 1 partial lines
   642  type Text_Line struct {
   643  	state         protoimpl.MessageState
   644  	sizeCache     protoimpl.SizeCache
   645  	unknownFields protoimpl.UnknownFields
   646  
   647  	// The line's text content, not including its delimiter.
   648  	Value []byte `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
   649  	// The line's delimiter string.
   650  	//
   651  	// If this is an empty string, this line is continued in the next sequential
   652  	// line, and the line's sequence number does not advance.
   653  	Delimiter string `protobuf:"bytes,2,opt,name=delimiter,proto3" json:"delimiter,omitempty"`
   654  }
   655  
   656  func (x *Text_Line) Reset() {
   657  	*x = Text_Line{}
   658  	if protoimpl.UnsafeEnabled {
   659  		mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[7]
   660  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   661  		ms.StoreMessageInfo(mi)
   662  	}
   663  }
   664  
   665  func (x *Text_Line) String() string {
   666  	return protoimpl.X.MessageStringOf(x)
   667  }
   668  
   669  func (*Text_Line) ProtoMessage() {}
   670  
   671  func (x *Text_Line) ProtoReflect() protoreflect.Message {
   672  	mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[7]
   673  	if protoimpl.UnsafeEnabled && x != nil {
   674  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   675  		if ms.LoadMessageInfo() == nil {
   676  			ms.StoreMessageInfo(mi)
   677  		}
   678  		return ms
   679  	}
   680  	return mi.MessageOf(x)
   681  }
   682  
   683  // Deprecated: Use Text_Line.ProtoReflect.Descriptor instead.
   684  func (*Text_Line) Descriptor() ([]byte, []int) {
   685  	return file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescGZIP(), []int{1, 0}
   686  }
   687  
   688  func (x *Text_Line) GetValue() []byte {
   689  	if x != nil {
   690  		return x.Value
   691  	}
   692  	return nil
   693  }
   694  
   695  func (x *Text_Line) GetDelimiter() string {
   696  	if x != nil {
   697  		return x.Delimiter
   698  	}
   699  	return ""
   700  }
   701  
   702  // If this is not a partial datagram, this field will include reassembly and
   703  // state details for the full datagram.
   704  type Datagram_Partial struct {
   705  	state         protoimpl.MessageState
   706  	sizeCache     protoimpl.SizeCache
   707  	unknownFields protoimpl.UnknownFields
   708  
   709  	// The index, starting with zero, of this datagram fragment in the full
   710  	// datagram.
   711  	Index uint32 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"`
   712  	// The size of the full datagram
   713  	Size uint64 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"`
   714  	// If true, this is the last partial datagram in the overall datagram.
   715  	Last bool `protobuf:"varint,3,opt,name=last,proto3" json:"last,omitempty"`
   716  }
   717  
   718  func (x *Datagram_Partial) Reset() {
   719  	*x = Datagram_Partial{}
   720  	if protoimpl.UnsafeEnabled {
   721  		mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[8]
   722  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   723  		ms.StoreMessageInfo(mi)
   724  	}
   725  }
   726  
   727  func (x *Datagram_Partial) String() string {
   728  	return protoimpl.X.MessageStringOf(x)
   729  }
   730  
   731  func (*Datagram_Partial) ProtoMessage() {}
   732  
   733  func (x *Datagram_Partial) ProtoReflect() protoreflect.Message {
   734  	mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[8]
   735  	if protoimpl.UnsafeEnabled && x != nil {
   736  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   737  		if ms.LoadMessageInfo() == nil {
   738  			ms.StoreMessageInfo(mi)
   739  		}
   740  		return ms
   741  	}
   742  	return mi.MessageOf(x)
   743  }
   744  
   745  // Deprecated: Use Datagram_Partial.ProtoReflect.Descriptor instead.
   746  func (*Datagram_Partial) Descriptor() ([]byte, []int) {
   747  	return file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescGZIP(), []int{3, 0}
   748  }
   749  
   750  func (x *Datagram_Partial) GetIndex() uint32 {
   751  	if x != nil {
   752  		return x.Index
   753  	}
   754  	return 0
   755  }
   756  
   757  func (x *Datagram_Partial) GetSize() uint64 {
   758  	if x != nil {
   759  		return x.Size
   760  	}
   761  	return 0
   762  }
   763  
   764  func (x *Datagram_Partial) GetLast() bool {
   765  	if x != nil {
   766  		return x.Last
   767  	}
   768  	return false
   769  }
   770  
   771  // Entry is a single index entry.
   772  //
   773  // The index is composed of a series of entries, each corresponding to a
   774  // sequential snapshot of of the log stream.
   775  type LogIndex_Entry struct {
   776  	state         protoimpl.MessageState
   777  	sizeCache     protoimpl.SizeCache
   778  	unknownFields protoimpl.UnknownFields
   779  
   780  	// The byte offset in the emitted log stream of the RecordIO entry for the
   781  	// LogEntry corresponding to this Entry.
   782  	Offset uint64 `protobuf:"varint,1,opt,name=offset,proto3" json:"offset,omitempty"`
   783  	// The sequence number of the first content entry.
   784  	//
   785  	// Text: This is the line index of the first included line. Line indices
   786  	//
   787  	//	begin at zero.
   788  	//
   789  	// Binary: This is the byte offset of the first byte in the included data.
   790  	// Datagram: This is the index of the datagram. The first datagram has index
   791  	//
   792  	//	zero.
   793  	Sequence uint64 `protobuf:"varint,2,opt,name=sequence,proto3" json:"sequence,omitempty"`
   794  	// The log index that this entry describes (required).
   795  	//
   796  	// This is used by clients to identify a specific LogEntry within a set of
   797  	// streams sharing a Prefix.
   798  	PrefixIndex uint64 `protobuf:"varint,3,opt,name=prefix_index,json=prefixIndex,proto3" json:"prefix_index,omitempty"`
   799  	// The time offset of this log entry (required).
   800  	//
   801  	// This is used by clients to identify a specific LogEntry within a log
   802  	// stream.
   803  	StreamIndex uint64 `protobuf:"varint,4,opt,name=stream_index,json=streamIndex,proto3" json:"stream_index,omitempty"`
   804  	// The time offset of this log entry, in microseconds.
   805  	//
   806  	// This is added to the descriptor's "timestamp" field to identify the
   807  	// specific timestamp of this log. It is used by clients to identify a
   808  	// specific LogEntry by time.
   809  	TimeOffset *durationpb.Duration `protobuf:"bytes,5,opt,name=time_offset,json=timeOffset,proto3" json:"time_offset,omitempty"`
   810  }
   811  
   812  func (x *LogIndex_Entry) Reset() {
   813  	*x = LogIndex_Entry{}
   814  	if protoimpl.UnsafeEnabled {
   815  		mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[9]
   816  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   817  		ms.StoreMessageInfo(mi)
   818  	}
   819  }
   820  
   821  func (x *LogIndex_Entry) String() string {
   822  	return protoimpl.X.MessageStringOf(x)
   823  }
   824  
   825  func (*LogIndex_Entry) ProtoMessage() {}
   826  
   827  func (x *LogIndex_Entry) ProtoReflect() protoreflect.Message {
   828  	mi := &file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[9]
   829  	if protoimpl.UnsafeEnabled && x != nil {
   830  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   831  		if ms.LoadMessageInfo() == nil {
   832  			ms.StoreMessageInfo(mi)
   833  		}
   834  		return ms
   835  	}
   836  	return mi.MessageOf(x)
   837  }
   838  
   839  // Deprecated: Use LogIndex_Entry.ProtoReflect.Descriptor instead.
   840  func (*LogIndex_Entry) Descriptor() ([]byte, []int) {
   841  	return file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescGZIP(), []int{5, 0}
   842  }
   843  
   844  func (x *LogIndex_Entry) GetOffset() uint64 {
   845  	if x != nil {
   846  		return x.Offset
   847  	}
   848  	return 0
   849  }
   850  
   851  func (x *LogIndex_Entry) GetSequence() uint64 {
   852  	if x != nil {
   853  		return x.Sequence
   854  	}
   855  	return 0
   856  }
   857  
   858  func (x *LogIndex_Entry) GetPrefixIndex() uint64 {
   859  	if x != nil {
   860  		return x.PrefixIndex
   861  	}
   862  	return 0
   863  }
   864  
   865  func (x *LogIndex_Entry) GetStreamIndex() uint64 {
   866  	if x != nil {
   867  		return x.StreamIndex
   868  	}
   869  	return 0
   870  }
   871  
   872  func (x *LogIndex_Entry) GetTimeOffset() *durationpb.Duration {
   873  	if x != nil {
   874  		return x.TimeOffset
   875  	}
   876  	return nil
   877  }
   878  
   879  var File_go_chromium_org_luci_logdog_api_logpb_log_proto protoreflect.FileDescriptor
   880  
   881  var file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDesc = []byte{
   882  	0x0a, 0x2f, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72,
   883  	0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x6c, 0x6f, 0x67, 0x64, 0x6f, 0x67, 0x2f, 0x61, 0x70,
   884  	0x69, 0x2f, 0x6c, 0x6f, 0x67, 0x70, 0x62, 0x2f, 0x6c, 0x6f, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74,
   885  	0x6f, 0x12, 0x05, 0x6c, 0x6f, 0x67, 0x70, 0x62, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
   886  	0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
   887  	0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
   888  	0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74,
   889  	0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xed, 0x02, 0x0a, 0x13, 0x4c, 0x6f,
   890  	0x67, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f,
   891  	0x72, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28,
   892  	0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
   893  	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a,
   894  	0x0b, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01,
   895  	0x28, 0x0e, 0x32, 0x11, 0x2e, 0x6c, 0x6f, 0x67, 0x70, 0x62, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61,
   896  	0x6d, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x79, 0x70,
   897  	0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70,
   898  	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
   899  	0x54, 0x79, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
   900  	0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
   901  	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
   902  	0x61, 0x6d, 0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x38,
   903  	0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6c,
   904  	0x6f, 0x67, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x44, 0x65,
   905  	0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74,
   906  	0x72, 0x79, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x69, 0x6e, 0x61,
   907  	0x72, 0x79, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x65, 0x78, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28,
   908  	0x09, 0x52, 0x0d, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x45, 0x78, 0x74,
   909  	0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
   910  	0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
   911  	0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
   912  	0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x6a, 0x0a, 0x04, 0x54, 0x65, 0x78,
   913  	0x74, 0x12, 0x26, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
   914  	0x32, 0x10, 0x2e, 0x6c, 0x6f, 0x67, 0x70, 0x62, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x2e, 0x4c, 0x69,
   915  	0x6e, 0x65, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x1a, 0x3a, 0x0a, 0x04, 0x4c, 0x69, 0x6e,
   916  	0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c,
   917  	0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x6c, 0x69, 0x6d,
   918  	0x69, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x65, 0x6c, 0x69,
   919  	0x6d, 0x69, 0x74, 0x65, 0x72, 0x22, 0x22, 0x0a, 0x06, 0x42, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x12,
   920  	0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64,
   921  	0x61, 0x74, 0x61, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x22, 0x9a, 0x01, 0x0a, 0x08, 0x44, 0x61,
   922  	0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01,
   923  	0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x31, 0x0a, 0x07, 0x70, 0x61,
   924  	0x72, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6c, 0x6f,
   925  	0x67, 0x70, 0x62, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x2e, 0x50, 0x61, 0x72,
   926  	0x74, 0x69, 0x61, 0x6c, 0x52, 0x07, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x1a, 0x47, 0x0a,
   927  	0x07, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65,
   928  	0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x12,
   929  	0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x69,
   930  	0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08,
   931  	0x52, 0x04, 0x6c, 0x61, 0x73, 0x74, 0x22, 0xae, 0x02, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x45, 0x6e,
   932  	0x74, 0x72, 0x79, 0x12, 0x3a, 0x0a, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73,
   933  	0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
   934  	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74,
   935  	0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12,
   936  	0x21, 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18,
   937  	0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x49, 0x6e, 0x64,
   938  	0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x69, 0x6e, 0x64,
   939  	0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d,
   940  	0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63,
   941  	0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63,
   942  	0x65, 0x12, 0x21, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32,
   943  	0x0b, 0x2e, 0x6c, 0x6f, 0x67, 0x70, 0x62, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x48, 0x00, 0x52, 0x04,
   944  	0x74, 0x65, 0x78, 0x74, 0x12, 0x27, 0x0a, 0x06, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x0b,
   945  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6c, 0x6f, 0x67, 0x70, 0x62, 0x2e, 0x42, 0x69, 0x6e,
   946  	0x61, 0x72, 0x79, 0x48, 0x00, 0x52, 0x06, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x12, 0x2d, 0x0a,
   947  	0x08, 0x64, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32,
   948  	0x0f, 0x2e, 0x6c, 0x6f, 0x67, 0x70, 0x62, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d,
   949  	0x48, 0x00, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x42, 0x09, 0x0a, 0x07,
   950  	0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0xab, 0x03, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x49,
   951  	0x6e, 0x64, 0x65, 0x78, 0x12, 0x2e, 0x0a, 0x04, 0x64, 0x65, 0x73, 0x63, 0x18, 0x01, 0x20, 0x01,
   952  	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6c, 0x6f, 0x67, 0x70, 0x62, 0x2e, 0x4c, 0x6f, 0x67, 0x53, 0x74,
   953  	0x72, 0x65, 0x61, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x52, 0x04,
   954  	0x64, 0x65, 0x73, 0x63, 0x12, 0x2f, 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18,
   955  	0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6c, 0x6f, 0x67, 0x70, 0x62, 0x2e, 0x4c, 0x6f,
   956  	0x67, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x65, 0x6e,
   957  	0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x72,
   958  	0x65, 0x66, 0x69, 0x78, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04,
   959  	0x52, 0x0f, 0x6c, 0x61, 0x73, 0x74, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x49, 0x6e, 0x64, 0x65,
   960  	0x78, 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d,
   961  	0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x6c, 0x61,
   962  	0x73, 0x74, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a,
   963  	0x0f, 0x6c, 0x6f, 0x67, 0x5f, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74,
   964  	0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79,
   965  	0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0xbd, 0x01, 0x0a, 0x05, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
   966  	0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52,
   967  	0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65,
   968  	0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x65, 0x71, 0x75, 0x65,
   969  	0x6e, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x69, 0x6e,
   970  	0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, 0x72, 0x65, 0x66, 0x69,
   971  	0x78, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d,
   972  	0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x73, 0x74,
   973  	0x72, 0x65, 0x61, 0x6d, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x3a, 0x0a, 0x0b, 0x74, 0x69, 0x6d,
   974  	0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19,
   975  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
   976  	0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x4f,
   977  	0x66, 0x66, 0x73, 0x65, 0x74, 0x2a, 0x30, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54,
   978  	0x79, 0x70, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x54, 0x45, 0x58, 0x54, 0x10, 0x00, 0x12, 0x0a, 0x0a,
   979  	0x06, 0x42, 0x49, 0x4e, 0x41, 0x52, 0x59, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x41, 0x54,
   980  	0x41, 0x47, 0x52, 0x41, 0x4d, 0x10, 0x02, 0x42, 0x27, 0x5a, 0x25, 0x67, 0x6f, 0x2e, 0x63, 0x68,
   981  	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f,
   982  	0x6c, 0x6f, 0x67, 0x64, 0x6f, 0x67, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6c, 0x6f, 0x67, 0x70, 0x62,
   983  	0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
   984  }
   985  
   986  var (
   987  	file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescOnce sync.Once
   988  	file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescData = file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDesc
   989  )
   990  
   991  func file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescGZIP() []byte {
   992  	file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescOnce.Do(func() {
   993  		file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescData)
   994  	})
   995  	return file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDescData
   996  }
   997  
   998  var file_go_chromium_org_luci_logdog_api_logpb_log_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
   999  var file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes = make([]protoimpl.MessageInfo, 10)
  1000  var file_go_chromium_org_luci_logdog_api_logpb_log_proto_goTypes = []interface{}{
  1001  	(StreamType)(0),               // 0: logpb.StreamType
  1002  	(*LogStreamDescriptor)(nil),   // 1: logpb.LogStreamDescriptor
  1003  	(*Text)(nil),                  // 2: logpb.Text
  1004  	(*Binary)(nil),                // 3: logpb.Binary
  1005  	(*Datagram)(nil),              // 4: logpb.Datagram
  1006  	(*LogEntry)(nil),              // 5: logpb.LogEntry
  1007  	(*LogIndex)(nil),              // 6: logpb.LogIndex
  1008  	nil,                           // 7: logpb.LogStreamDescriptor.TagsEntry
  1009  	(*Text_Line)(nil),             // 8: logpb.Text.Line
  1010  	(*Datagram_Partial)(nil),      // 9: logpb.Datagram.Partial
  1011  	(*LogIndex_Entry)(nil),        // 10: logpb.LogIndex.Entry
  1012  	(*timestamppb.Timestamp)(nil), // 11: google.protobuf.Timestamp
  1013  	(*durationpb.Duration)(nil),   // 12: google.protobuf.Duration
  1014  }
  1015  var file_go_chromium_org_luci_logdog_api_logpb_log_proto_depIdxs = []int32{
  1016  	0,  // 0: logpb.LogStreamDescriptor.stream_type:type_name -> logpb.StreamType
  1017  	11, // 1: logpb.LogStreamDescriptor.timestamp:type_name -> google.protobuf.Timestamp
  1018  	7,  // 2: logpb.LogStreamDescriptor.tags:type_name -> logpb.LogStreamDescriptor.TagsEntry
  1019  	8,  // 3: logpb.Text.lines:type_name -> logpb.Text.Line
  1020  	9,  // 4: logpb.Datagram.partial:type_name -> logpb.Datagram.Partial
  1021  	12, // 5: logpb.LogEntry.time_offset:type_name -> google.protobuf.Duration
  1022  	2,  // 6: logpb.LogEntry.text:type_name -> logpb.Text
  1023  	3,  // 7: logpb.LogEntry.binary:type_name -> logpb.Binary
  1024  	4,  // 8: logpb.LogEntry.datagram:type_name -> logpb.Datagram
  1025  	1,  // 9: logpb.LogIndex.desc:type_name -> logpb.LogStreamDescriptor
  1026  	10, // 10: logpb.LogIndex.entries:type_name -> logpb.LogIndex.Entry
  1027  	12, // 11: logpb.LogIndex.Entry.time_offset:type_name -> google.protobuf.Duration
  1028  	12, // [12:12] is the sub-list for method output_type
  1029  	12, // [12:12] is the sub-list for method input_type
  1030  	12, // [12:12] is the sub-list for extension type_name
  1031  	12, // [12:12] is the sub-list for extension extendee
  1032  	0,  // [0:12] is the sub-list for field type_name
  1033  }
  1034  
  1035  func init() { file_go_chromium_org_luci_logdog_api_logpb_log_proto_init() }
  1036  func file_go_chromium_org_luci_logdog_api_logpb_log_proto_init() {
  1037  	if File_go_chromium_org_luci_logdog_api_logpb_log_proto != nil {
  1038  		return
  1039  	}
  1040  	if !protoimpl.UnsafeEnabled {
  1041  		file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1042  			switch v := v.(*LogStreamDescriptor); i {
  1043  			case 0:
  1044  				return &v.state
  1045  			case 1:
  1046  				return &v.sizeCache
  1047  			case 2:
  1048  				return &v.unknownFields
  1049  			default:
  1050  				return nil
  1051  			}
  1052  		}
  1053  		file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1054  			switch v := v.(*Text); i {
  1055  			case 0:
  1056  				return &v.state
  1057  			case 1:
  1058  				return &v.sizeCache
  1059  			case 2:
  1060  				return &v.unknownFields
  1061  			default:
  1062  				return nil
  1063  			}
  1064  		}
  1065  		file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1066  			switch v := v.(*Binary); i {
  1067  			case 0:
  1068  				return &v.state
  1069  			case 1:
  1070  				return &v.sizeCache
  1071  			case 2:
  1072  				return &v.unknownFields
  1073  			default:
  1074  				return nil
  1075  			}
  1076  		}
  1077  		file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1078  			switch v := v.(*Datagram); i {
  1079  			case 0:
  1080  				return &v.state
  1081  			case 1:
  1082  				return &v.sizeCache
  1083  			case 2:
  1084  				return &v.unknownFields
  1085  			default:
  1086  				return nil
  1087  			}
  1088  		}
  1089  		file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1090  			switch v := v.(*LogEntry); i {
  1091  			case 0:
  1092  				return &v.state
  1093  			case 1:
  1094  				return &v.sizeCache
  1095  			case 2:
  1096  				return &v.unknownFields
  1097  			default:
  1098  				return nil
  1099  			}
  1100  		}
  1101  		file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1102  			switch v := v.(*LogIndex); i {
  1103  			case 0:
  1104  				return &v.state
  1105  			case 1:
  1106  				return &v.sizeCache
  1107  			case 2:
  1108  				return &v.unknownFields
  1109  			default:
  1110  				return nil
  1111  			}
  1112  		}
  1113  		file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  1114  			switch v := v.(*Text_Line); i {
  1115  			case 0:
  1116  				return &v.state
  1117  			case 1:
  1118  				return &v.sizeCache
  1119  			case 2:
  1120  				return &v.unknownFields
  1121  			default:
  1122  				return nil
  1123  			}
  1124  		}
  1125  		file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  1126  			switch v := v.(*Datagram_Partial); i {
  1127  			case 0:
  1128  				return &v.state
  1129  			case 1:
  1130  				return &v.sizeCache
  1131  			case 2:
  1132  				return &v.unknownFields
  1133  			default:
  1134  				return nil
  1135  			}
  1136  		}
  1137  		file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  1138  			switch v := v.(*LogIndex_Entry); i {
  1139  			case 0:
  1140  				return &v.state
  1141  			case 1:
  1142  				return &v.sizeCache
  1143  			case 2:
  1144  				return &v.unknownFields
  1145  			default:
  1146  				return nil
  1147  			}
  1148  		}
  1149  	}
  1150  	file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes[4].OneofWrappers = []interface{}{
  1151  		(*LogEntry_Text)(nil),
  1152  		(*LogEntry_Binary)(nil),
  1153  		(*LogEntry_Datagram)(nil),
  1154  	}
  1155  	type x struct{}
  1156  	out := protoimpl.TypeBuilder{
  1157  		File: protoimpl.DescBuilder{
  1158  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1159  			RawDescriptor: file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDesc,
  1160  			NumEnums:      1,
  1161  			NumMessages:   10,
  1162  			NumExtensions: 0,
  1163  			NumServices:   0,
  1164  		},
  1165  		GoTypes:           file_go_chromium_org_luci_logdog_api_logpb_log_proto_goTypes,
  1166  		DependencyIndexes: file_go_chromium_org_luci_logdog_api_logpb_log_proto_depIdxs,
  1167  		EnumInfos:         file_go_chromium_org_luci_logdog_api_logpb_log_proto_enumTypes,
  1168  		MessageInfos:      file_go_chromium_org_luci_logdog_api_logpb_log_proto_msgTypes,
  1169  	}.Build()
  1170  	File_go_chromium_org_luci_logdog_api_logpb_log_proto = out.File
  1171  	file_go_chromium_org_luci_logdog_api_logpb_log_proto_rawDesc = nil
  1172  	file_go_chromium_org_luci_logdog_api_logpb_log_proto_goTypes = nil
  1173  	file_go_chromium_org_luci_logdog_api_logpb_log_proto_depIdxs = nil
  1174  }