github.com/yankunsam/loki/v2@v2.6.3-0.20220817130409-389df5235c27/pkg/ingester/checkpoint.proto (about) 1 syntax = "proto3"; 2 3 package loki_ingester; 4 5 import "github.com/gogo/protobuf/gogoproto/gogo.proto"; 6 import "google/protobuf/timestamp.proto"; 7 import "pkg/logproto/logproto.proto"; 8 9 option go_package = "ingester"; 10 11 // Chunk is a {de,}serializable intermediate type for chunkDesc which allows 12 // efficient loading/unloading to disk during WAL checkpoint recovery. 13 message Chunk { 14 google.protobuf.Timestamp from = 1 [ 15 (gogoproto.stdtime) = true, 16 (gogoproto.nullable) = false 17 ]; 18 google.protobuf.Timestamp to = 2 [ 19 (gogoproto.stdtime) = true, 20 (gogoproto.nullable) = false 21 ]; 22 google.protobuf.Timestamp flushedAt = 3 [ 23 (gogoproto.stdtime) = true, 24 (gogoproto.nullable) = false 25 ]; 26 google.protobuf.Timestamp lastUpdated = 4 [ 27 (gogoproto.stdtime) = true, 28 (gogoproto.nullable) = false 29 ]; 30 bool closed = 5; 31 bool synced = 6; 32 // data to be unmarshaled into a MemChunk 33 bytes data = 7; 34 // data to be unmarshaled into a MemChunk's headBlock 35 bytes head = 8; 36 } 37 38 // Series is a {de,}serializable intermediate type for Series. 39 message Series { 40 string userID = 1; 41 // post mapped fingerprint is necessary because subsequent wal writes will reference it. 42 uint64 fingerprint = 2; 43 repeated logproto.LegacyLabelPair labels = 3 [ 44 (gogoproto.nullable) = false, 45 (gogoproto.customtype) = "github.com/grafana/loki/pkg/logproto.LabelAdapter" 46 ]; 47 repeated Chunk chunks = 4 [(gogoproto.nullable) = false]; 48 // most recently pushed timestamp. 49 google.protobuf.Timestamp to = 5 [ 50 (gogoproto.stdtime) = true, 51 (gogoproto.nullable) = false 52 ]; 53 // most recently pushed line. 54 string lastLine = 6; 55 // highest counter value for pushes to this stream. 56 // Used to skip already applied entries during WAL replay. 57 int64 entryCt = 7; 58 // highest timestamp pushed to this stream. 59 google.protobuf.Timestamp highestTs = 8 [ 60 (gogoproto.stdtime) = true, 61 (gogoproto.nullable) = false 62 ]; 63 }