github.com/cloudwan/edgelq-sdk@v1.15.4/monitoring/proto/v3/time_serie.proto (about) 1 syntax = "proto3"; 2 3 package ntt.monitoring.v3; 4 5 import "edgelq-sdk/monitoring/proto/v3/common.proto"; 6 import "edgelq-sdk/monitoring/proto/v3/metric_descriptor.proto"; 7 import "google/api/resource.proto"; 8 9 option go_package = "github.com/cloudwan/edgelq-sdk/monitoring/resources/v3/time_serie;time_serie"; 10 option java_multiple_files = true; 11 option java_outer_classname = "TimeSerieProto"; 12 option java_package = "com.ntt.monitoring.pb.v3"; 13 14 // A single data point in a time series. 15 message Point { 16 // The time interval to which the data point applies. For `GAUGE` metrics, 17 // only the end time of the interval is used. For `DELTA` metrics, the start 18 // and end time should specify a non-zero interval, with subsequent points 19 // specifying contiguous and non-overlapping intervals. For `CUMULATIVE` 20 // metrics, the start and end time should specify a non-zero interval, with 21 // subsequent points specifying the same start time and increasing end times, 22 // until an event resets the cumulative value to zero and sets a new start 23 // time for the following points. 24 TimeInterval interval = 1; 25 26 // The value of the data point. 27 TypedValue value = 2; 28 29 // Additional aggregation info 30 // Used internally for batching rollup points 31 Aggregation aggregation = 101; 32 } 33 34 // A collection of data points that describes the time-varying values 35 // of a metric. A time series is identified by a combination of a 36 // fully-specified monitored resource and a fully-specified metric. 37 // This type is used for both listing and creating time series. 38 message TimeSerie { 39 option (google.api.resource) = { 40 type : "monitoring.edgelq.com/TimeSerie" 41 pattern : "projects/{project}/timeSeries/{time_serie}" 42 }; 43 44 // TimeSerie key identifies unique TimeSeries tuple: 45 // <project, region, metric.type, metric.labels, resource.type, 46 // resource.labels> 47 // 48 // Kind/ValueType are not present in key 49 // Key is not to be decoded outside of service, but treated as opaque string 50 // 51 // Specific key is valid and understood only in single region only. If time 52 // serie is created by merging from multiple regions, key must be ignore. 53 bytes key = 101; 54 55 // Internal use - for bulk reporting of TimeSeries 56 string project = 102; 57 58 // Region ID associated with time serie. 59 string region = 103; 60 61 // The associated metric. A fully-specified metric used to identify the time 62 // series. 63 Metric metric = 1; 64 65 // The associated monitored resource. Custom metrics can use only certain 66 // monitored resource types in their time series data. 67 MonitoredResource resource = 2; 68 69 // The metric kind of the time series. When listing time series, this metric 70 // kind might be different from the metric kind of the associated metric if 71 // this time series is an alignment or reduction of other time series. 72 // 73 // When creating a time series, this field is optional. If present, it must be 74 // the same as the metric kind of the associated metric. If the associated 75 // metric's descriptor must be auto-created, then this field specifies the 76 // metric kind of the new descriptor and must be either `GAUGE` (the default) 77 // or `CUMULATIVE`. 78 MetricDescriptor.MetricKind metric_kind = 3; 79 80 // The value type of the time series. When listing time series, this value 81 // type might be different from the value type of the associated metric if 82 // this time series is an alignment or reduction of other time series. 83 // 84 // When creating a time series, this field is optional. If present, it must be 85 // the same as the type of the data in the `points` field. 86 MetricDescriptor.ValueType value_type = 4; 87 88 // The data points of this time series. When listing time series, points are 89 // returned in reverse time order. 90 // 91 // When creating a time series, this field must contain exactly one point and 92 // the point's type must be the same as the value type of the associated 93 // metric. If the associated metric's descriptor must be auto-created, then 94 // the value type of the descriptor is determined by the point's type, which 95 // must be `BOOL`, `INT64`, `DOUBLE`, or `DISTRIBUTION`. 96 repeated Point points = 5; 97 98 reserved 7; 99 } 100 101 // Used for reporting rollups 102 message BulkTimeSeries { 103 repeated TimeSerie time_series = 1; 104 105 bool phantom_flag = 2; 106 }