1#[derive(serde::Serialize, serde::Deserialize)]
3#[serde(rename_all = "snake_case")]
4#[derive(Clone, PartialEq, ::prost::Message)]
5pub struct DashboardFolder {
6 #[prost(message, optional, tag = "1")]
7 pub id: ::core::option::Option<::prost::alloc::string::String>,
8 #[prost(message, optional, tag = "2")]
9 pub name: ::core::option::Option<::prost::alloc::string::String>,
10 #[prost(message, optional, tag = "3")]
11 pub parent_id: ::core::option::Option<::prost::alloc::string::String>,
12}
13#[derive(serde::Serialize, serde::Deserialize)]
14#[serde(rename_all = "snake_case")]
15#[derive(Clone, PartialEq, ::prost::Message)]
16pub struct ObservationField {
17 #[prost(message, repeated, tag = "1")]
18 pub keypath: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
19 #[prost(enumeration = "DatasetScope", tag = "2")]
20 pub scope: i32,
21}
22#[derive(serde::Serialize, serde::Deserialize)]
23#[serde(rename_all = "snake_case")]
24#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
25#[repr(i32)]
26pub enum DatasetScope {
27 Unspecified = 0,
28 UserData = 1,
29 Label = 2,
30 Metadata = 3,
31}
32impl DatasetScope {
33 pub fn as_str_name(&self) -> &'static str {
38 match self {
39 Self::Unspecified => "DATASET_SCOPE_UNSPECIFIED",
40 Self::UserData => "DATASET_SCOPE_USER_DATA",
41 Self::Label => "DATASET_SCOPE_LABEL",
42 Self::Metadata => "DATASET_SCOPE_METADATA",
43 }
44 }
45 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
47 match value {
48 "DATASET_SCOPE_UNSPECIFIED" => Some(Self::Unspecified),
49 "DATASET_SCOPE_USER_DATA" => Some(Self::UserData),
50 "DATASET_SCOPE_LABEL" => Some(Self::Label),
51 "DATASET_SCOPE_METADATA" => Some(Self::Metadata),
52 _ => None,
53 }
54 }
55}
56#[derive(serde::Serialize, serde::Deserialize)]
57#[serde(rename_all = "snake_case")]
58#[derive(Clone, PartialEq, ::prost::Message)]
59pub struct DataprimeQuery {
60 #[prost(string, tag = "1")]
61 pub text: ::prost::alloc::string::String,
62}
63#[derive(serde::Serialize, serde::Deserialize)]
64#[serde(rename_all = "snake_case")]
65#[derive(Clone, PartialEq, ::prost::Message)]
66pub struct SerializedDataprimeQuery {
67 #[prost(bytes = "vec", tag = "1")]
68 pub data: ::prost::alloc::vec::Vec<u8>,
69}
70#[derive(serde::Serialize, serde::Deserialize)]
71#[serde(rename_all = "snake_case")]
72#[derive(Clone, PartialEq, ::prost::Message)]
73pub struct FullDataprimeQuery {
74 #[prost(message, optional, tag = "1")]
75 pub serialized: ::core::option::Option<SerializedDataprimeQuery>,
76 #[prost(message, optional, tag = "2")]
77 pub raw: ::core::option::Option<DataprimeQuery>,
78}
79#[derive(serde::Serialize, serde::Deserialize)]
80#[serde(rename_all = "snake_case")]
81#[derive(Clone, PartialEq, ::prost::Message)]
82pub struct PromQlQuery {
83 #[prost(message, optional, tag = "1")]
84 pub value: ::core::option::Option<::prost::alloc::string::String>,
85}
86#[derive(serde::Serialize, serde::Deserialize)]
87#[serde(rename_all = "snake_case")]
88#[derive(Clone, PartialEq, ::prost::Message)]
89pub struct LuceneQuery {
90 #[prost(message, optional, tag = "1")]
91 pub value: ::core::option::Option<::prost::alloc::string::String>,
92}
93#[derive(serde::Serialize, serde::Deserialize)]
94#[serde(rename_all = "snake_case")]
95#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
96#[repr(i32)]
97pub enum PromQlQueryType {
98 Unspecified = 0,
99 Range = 1,
100 Instant = 2,
101}
102impl PromQlQueryType {
103 pub fn as_str_name(&self) -> &'static str {
108 match self {
109 Self::Unspecified => "PROM_QL_QUERY_TYPE_UNSPECIFIED",
110 Self::Range => "PROM_QL_QUERY_TYPE_RANGE",
111 Self::Instant => "PROM_QL_QUERY_TYPE_INSTANT",
112 }
113 }
114 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
116 match value {
117 "PROM_QL_QUERY_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
118 "PROM_QL_QUERY_TYPE_RANGE" => Some(Self::Range),
119 "PROM_QL_QUERY_TYPE_INSTANT" => Some(Self::Instant),
120 _ => None,
121 }
122 }
123}
124#[derive(serde::Serialize, serde::Deserialize)]
125#[serde(rename_all = "snake_case")]
126#[derive(Clone, PartialEq, ::prost::Message)]
127pub struct SpanField {
128 #[prost(oneof = "span_field::Value", tags = "1, 2, 3")]
129 pub value: ::core::option::Option<span_field::Value>,
130}
131pub mod span_field {
133 #[derive(serde::Serialize, serde::Deserialize)]
134 #[serde(rename_all = "snake_case")]
135 #[derive(
136 Clone,
137 Copy,
138 Debug,
139 PartialEq,
140 Eq,
141 Hash,
142 PartialOrd,
143 Ord,
144 ::prost::Enumeration
145 )]
146 #[repr(i32)]
147 pub enum MetadataField {
148 Unspecified = 0,
149 ApplicationName = 1,
150 SubsystemName = 2,
151 ServiceName = 3,
152 OperationName = 4,
153 }
154 impl MetadataField {
155 pub fn as_str_name(&self) -> &'static str {
160 match self {
161 Self::Unspecified => "METADATA_FIELD_UNSPECIFIED",
162 Self::ApplicationName => "METADATA_FIELD_APPLICATION_NAME",
163 Self::SubsystemName => "METADATA_FIELD_SUBSYSTEM_NAME",
164 Self::ServiceName => "METADATA_FIELD_SERVICE_NAME",
165 Self::OperationName => "METADATA_FIELD_OPERATION_NAME",
166 }
167 }
168 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
170 match value {
171 "METADATA_FIELD_UNSPECIFIED" => Some(Self::Unspecified),
172 "METADATA_FIELD_APPLICATION_NAME" => Some(Self::ApplicationName),
173 "METADATA_FIELD_SUBSYSTEM_NAME" => Some(Self::SubsystemName),
174 "METADATA_FIELD_SERVICE_NAME" => Some(Self::ServiceName),
175 "METADATA_FIELD_OPERATION_NAME" => Some(Self::OperationName),
176 _ => None,
177 }
178 }
179 }
180 #[derive(serde::Serialize, serde::Deserialize)]
181 #[serde(rename_all = "snake_case")]
182 #[derive(Clone, PartialEq, ::prost::Oneof)]
183 pub enum Value {
184 #[prost(enumeration = "MetadataField", tag = "1")]
185 MetadataField(i32),
186 #[prost(message, tag = "2")]
187 TagField(::prost::alloc::string::String),
188 #[prost(message, tag = "3")]
189 ProcessTagField(::prost::alloc::string::String),
190 }
191}
192#[derive(serde::Serialize, serde::Deserialize)]
193#[serde(rename_all = "snake_case")]
194#[derive(Clone, PartialEq, ::prost::Message)]
195pub struct LogsAggregation {
196 #[prost(oneof = "logs_aggregation::Value", tags = "1, 2, 3, 4, 5, 6, 7")]
197 pub value: ::core::option::Option<logs_aggregation::Value>,
198}
199pub mod logs_aggregation {
201 #[derive(serde::Serialize, serde::Deserialize)]
202 #[serde(rename_all = "snake_case")]
203 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
204 pub struct Count {}
205 #[derive(serde::Serialize, serde::Deserialize)]
206 #[serde(rename_all = "snake_case")]
207 #[derive(Clone, PartialEq, ::prost::Message)]
208 pub struct CountDistinct {
209 #[prost(message, optional, tag = "1")]
210 pub field: ::core::option::Option<::prost::alloc::string::String>,
211 #[prost(message, optional, tag = "2")]
212 pub observation_field: ::core::option::Option<super::ObservationField>,
213 }
214 #[derive(serde::Serialize, serde::Deserialize)]
215 #[serde(rename_all = "snake_case")]
216 #[derive(Clone, PartialEq, ::prost::Message)]
217 pub struct Sum {
218 #[prost(message, optional, tag = "1")]
219 pub field: ::core::option::Option<::prost::alloc::string::String>,
220 #[prost(message, optional, tag = "2")]
221 pub observation_field: ::core::option::Option<super::ObservationField>,
222 }
223 #[derive(serde::Serialize, serde::Deserialize)]
224 #[serde(rename_all = "snake_case")]
225 #[derive(Clone, PartialEq, ::prost::Message)]
226 pub struct Average {
227 #[prost(message, optional, tag = "1")]
228 pub field: ::core::option::Option<::prost::alloc::string::String>,
229 #[prost(message, optional, tag = "2")]
230 pub observation_field: ::core::option::Option<super::ObservationField>,
231 }
232 #[derive(serde::Serialize, serde::Deserialize)]
233 #[serde(rename_all = "snake_case")]
234 #[derive(Clone, PartialEq, ::prost::Message)]
235 pub struct Min {
236 #[prost(message, optional, tag = "1")]
237 pub field: ::core::option::Option<::prost::alloc::string::String>,
238 #[prost(message, optional, tag = "2")]
239 pub observation_field: ::core::option::Option<super::ObservationField>,
240 }
241 #[derive(serde::Serialize, serde::Deserialize)]
242 #[serde(rename_all = "snake_case")]
243 #[derive(Clone, PartialEq, ::prost::Message)]
244 pub struct Max {
245 #[prost(message, optional, tag = "1")]
246 pub field: ::core::option::Option<::prost::alloc::string::String>,
247 #[prost(message, optional, tag = "2")]
248 pub observation_field: ::core::option::Option<super::ObservationField>,
249 }
250 #[derive(serde::Serialize, serde::Deserialize)]
251 #[serde(rename_all = "snake_case")]
252 #[derive(Clone, PartialEq, ::prost::Message)]
253 pub struct Percentile {
254 #[prost(message, optional, tag = "1")]
255 pub field: ::core::option::Option<::prost::alloc::string::String>,
256 #[prost(message, optional, tag = "2")]
258 pub percent: ::core::option::Option<f64>,
259 #[prost(message, optional, tag = "3")]
260 pub observation_field: ::core::option::Option<super::ObservationField>,
261 }
262 #[derive(serde::Serialize, serde::Deserialize)]
263 #[serde(rename_all = "snake_case")]
264 #[derive(Clone, PartialEq, ::prost::Oneof)]
265 pub enum Value {
266 #[prost(message, tag = "1")]
267 Count(Count),
268 #[prost(message, tag = "2")]
269 CountDistinct(CountDistinct),
270 #[prost(message, tag = "3")]
271 Sum(Sum),
272 #[prost(message, tag = "4")]
273 Average(Average),
274 #[prost(message, tag = "5")]
275 Min(Min),
276 #[prost(message, tag = "6")]
277 Max(Max),
278 #[prost(message, tag = "7")]
279 Percentile(Percentile),
280 }
281}
282#[derive(serde::Serialize, serde::Deserialize)]
283#[serde(rename_all = "snake_case")]
284#[derive(Clone, Copy, PartialEq, ::prost::Message)]
285pub struct SpansAggregation {
286 #[prost(oneof = "spans_aggregation::Aggregation", tags = "1, 2")]
287 pub aggregation: ::core::option::Option<spans_aggregation::Aggregation>,
288}
289pub mod spans_aggregation {
291 #[derive(serde::Serialize, serde::Deserialize)]
292 #[serde(rename_all = "snake_case")]
293 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
294 pub struct MetricAggregation {
295 #[prost(enumeration = "metric_aggregation::MetricField", tag = "1")]
296 pub metric_field: i32,
297 #[prost(enumeration = "metric_aggregation::MetricAggregationType", tag = "2")]
298 pub aggregation_type: i32,
299 }
300 pub mod metric_aggregation {
302 #[derive(serde::Serialize, serde::Deserialize)]
303 #[serde(rename_all = "snake_case")]
304 #[derive(
305 Clone,
306 Copy,
307 Debug,
308 PartialEq,
309 Eq,
310 Hash,
311 PartialOrd,
312 Ord,
313 ::prost::Enumeration
314 )]
315 #[repr(i32)]
316 pub enum MetricField {
317 Unspecified = 0,
318 Duration = 1,
319 }
320 impl MetricField {
321 pub fn as_str_name(&self) -> &'static str {
326 match self {
327 Self::Unspecified => "METRIC_FIELD_UNSPECIFIED",
328 Self::Duration => "METRIC_FIELD_DURATION",
329 }
330 }
331 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
333 match value {
334 "METRIC_FIELD_UNSPECIFIED" => Some(Self::Unspecified),
335 "METRIC_FIELD_DURATION" => Some(Self::Duration),
336 _ => None,
337 }
338 }
339 }
340 #[derive(serde::Serialize, serde::Deserialize)]
341 #[serde(rename_all = "snake_case")]
342 #[derive(
343 Clone,
344 Copy,
345 Debug,
346 PartialEq,
347 Eq,
348 Hash,
349 PartialOrd,
350 Ord,
351 ::prost::Enumeration
352 )]
353 #[repr(i32)]
354 pub enum MetricAggregationType {
355 Unspecified = 0,
356 Min = 1,
357 Max = 2,
358 Average = 3,
359 Sum = 4,
360 Percentile99 = 5,
361 Percentile95 = 6,
362 Percentile50 = 7,
363 }
364 impl MetricAggregationType {
365 pub fn as_str_name(&self) -> &'static str {
370 match self {
371 Self::Unspecified => "METRIC_AGGREGATION_TYPE_UNSPECIFIED",
372 Self::Min => "METRIC_AGGREGATION_TYPE_MIN",
373 Self::Max => "METRIC_AGGREGATION_TYPE_MAX",
374 Self::Average => "METRIC_AGGREGATION_TYPE_AVERAGE",
375 Self::Sum => "METRIC_AGGREGATION_TYPE_SUM",
376 Self::Percentile99 => "METRIC_AGGREGATION_TYPE_PERCENTILE_99",
377 Self::Percentile95 => "METRIC_AGGREGATION_TYPE_PERCENTILE_95",
378 Self::Percentile50 => "METRIC_AGGREGATION_TYPE_PERCENTILE_50",
379 }
380 }
381 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
383 match value {
384 "METRIC_AGGREGATION_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
385 "METRIC_AGGREGATION_TYPE_MIN" => Some(Self::Min),
386 "METRIC_AGGREGATION_TYPE_MAX" => Some(Self::Max),
387 "METRIC_AGGREGATION_TYPE_AVERAGE" => Some(Self::Average),
388 "METRIC_AGGREGATION_TYPE_SUM" => Some(Self::Sum),
389 "METRIC_AGGREGATION_TYPE_PERCENTILE_99" => Some(Self::Percentile99),
390 "METRIC_AGGREGATION_TYPE_PERCENTILE_95" => Some(Self::Percentile95),
391 "METRIC_AGGREGATION_TYPE_PERCENTILE_50" => Some(Self::Percentile50),
392 _ => None,
393 }
394 }
395 }
396 }
397 #[derive(serde::Serialize, serde::Deserialize)]
398 #[serde(rename_all = "snake_case")]
399 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
400 pub struct DimensionAggregation {
401 #[prost(enumeration = "dimension_aggregation::DimensionField", tag = "1")]
402 pub dimension_field: i32,
403 #[prost(
404 enumeration = "dimension_aggregation::DimensionAggregationType",
405 tag = "2"
406 )]
407 pub aggregation_type: i32,
408 }
409 pub mod dimension_aggregation {
411 #[derive(serde::Serialize, serde::Deserialize)]
412 #[serde(rename_all = "snake_case")]
413 #[derive(
414 Clone,
415 Copy,
416 Debug,
417 PartialEq,
418 Eq,
419 Hash,
420 PartialOrd,
421 Ord,
422 ::prost::Enumeration
423 )]
424 #[repr(i32)]
425 pub enum DimensionField {
426 Unspecified = 0,
427 TraceId = 1,
428 }
429 impl DimensionField {
430 pub fn as_str_name(&self) -> &'static str {
435 match self {
436 Self::Unspecified => "DIMENSION_FIELD_UNSPECIFIED",
437 Self::TraceId => "DIMENSION_FIELD_TRACE_ID",
438 }
439 }
440 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
442 match value {
443 "DIMENSION_FIELD_UNSPECIFIED" => Some(Self::Unspecified),
444 "DIMENSION_FIELD_TRACE_ID" => Some(Self::TraceId),
445 _ => None,
446 }
447 }
448 }
449 #[derive(serde::Serialize, serde::Deserialize)]
450 #[serde(rename_all = "snake_case")]
451 #[derive(
452 Clone,
453 Copy,
454 Debug,
455 PartialEq,
456 Eq,
457 Hash,
458 PartialOrd,
459 Ord,
460 ::prost::Enumeration
461 )]
462 #[repr(i32)]
463 pub enum DimensionAggregationType {
464 Unspecified = 0,
465 UniqueCount = 1,
466 ErrorCount = 2,
467 }
468 impl DimensionAggregationType {
469 pub fn as_str_name(&self) -> &'static str {
474 match self {
475 Self::Unspecified => "DIMENSION_AGGREGATION_TYPE_UNSPECIFIED",
476 Self::UniqueCount => "DIMENSION_AGGREGATION_TYPE_UNIQUE_COUNT",
477 Self::ErrorCount => "DIMENSION_AGGREGATION_TYPE_ERROR_COUNT",
478 }
479 }
480 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
482 match value {
483 "DIMENSION_AGGREGATION_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
484 "DIMENSION_AGGREGATION_TYPE_UNIQUE_COUNT" => Some(Self::UniqueCount),
485 "DIMENSION_AGGREGATION_TYPE_ERROR_COUNT" => Some(Self::ErrorCount),
486 _ => None,
487 }
488 }
489 }
490 }
491 #[derive(serde::Serialize, serde::Deserialize)]
492 #[serde(rename_all = "snake_case")]
493 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
494 pub enum Aggregation {
495 #[prost(message, tag = "1")]
496 MetricAggregation(MetricAggregation),
497 #[prost(message, tag = "2")]
498 DimensionAggregation(DimensionAggregation),
499 }
500}
501#[derive(serde::Serialize, serde::Deserialize)]
502#[serde(rename_all = "snake_case")]
503#[derive(Clone, Copy, PartialEq, ::prost::Message)]
504pub struct TimeFrameSelect {
505 #[prost(oneof = "time_frame_select::Value", tags = "1, 2")]
506 pub value: ::core::option::Option<time_frame_select::Value>,
507}
508pub mod time_frame_select {
510 #[derive(serde::Serialize, serde::Deserialize)]
511 #[serde(rename_all = "snake_case")]
512 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
513 pub enum Value {
514 #[prost(message, tag = "1")]
515 AbsoluteTimeFrame(super::TimeFrame),
516 #[prost(message, tag = "2")]
517 RelativeTimeFrame(::prost_wkt_types::Duration),
518 }
519}
520#[derive(serde::Serialize, serde::Deserialize)]
521#[serde(rename_all = "snake_case")]
522#[derive(Clone, Copy, PartialEq, ::prost::Message)]
523pub struct TimeFrame {
524 #[prost(message, optional, tag = "1")]
525 pub from: ::core::option::Option<::prost_wkt_types::Timestamp>,
526 #[prost(message, optional, tag = "2")]
527 pub to: ::core::option::Option<::prost_wkt_types::Timestamp>,
528}
529#[derive(serde::Serialize, serde::Deserialize)]
530#[serde(rename_all = "snake_case")]
531#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
532#[repr(i32)]
533pub enum OrderDirection {
534 Unspecified = 0,
535 Asc = 1,
536 Desc = 2,
537}
538impl OrderDirection {
539 pub fn as_str_name(&self) -> &'static str {
544 match self {
545 Self::Unspecified => "ORDER_DIRECTION_UNSPECIFIED",
546 Self::Asc => "ORDER_DIRECTION_ASC",
547 Self::Desc => "ORDER_DIRECTION_DESC",
548 }
549 }
550 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
552 match value {
553 "ORDER_DIRECTION_UNSPECIFIED" => Some(Self::Unspecified),
554 "ORDER_DIRECTION_ASC" => Some(Self::Asc),
555 "ORDER_DIRECTION_DESC" => Some(Self::Desc),
556 _ => None,
557 }
558 }
559}
560#[derive(serde::Serialize, serde::Deserialize)]
561#[serde(rename_all = "snake_case")]
562#[derive(Clone, PartialEq, ::prost::Message)]
563pub struct OrderingField {
564 #[prost(message, optional, tag = "1")]
565 pub field: ::core::option::Option<::prost::alloc::string::String>,
566 #[prost(enumeration = "OrderDirection", tag = "2")]
567 pub order_direction: i32,
568}