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")]
8 pub id: ::core::option::Option<::prost::alloc::string::String>,
9 #[prost(message, optional, tag = "2")]
11 pub name: ::core::option::Option<::prost::alloc::string::String>,
12 #[prost(message, optional, tag = "3")]
13 pub parent_id: ::core::option::Option<::prost::alloc::string::String>,
14}
15#[derive(serde::Serialize, serde::Deserialize)]
16#[serde(rename_all = "snake_case")]
17#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
18#[repr(i32)]
19pub enum DataModeType {
20 HighUnspecified = 0,
21 Archive = 1,
22}
23impl DataModeType {
24 pub fn as_str_name(&self) -> &'static str {
29 match self {
30 Self::HighUnspecified => "DATA_MODE_TYPE_HIGH_UNSPECIFIED",
31 Self::Archive => "DATA_MODE_TYPE_ARCHIVE",
32 }
33 }
34 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
36 match value {
37 "DATA_MODE_TYPE_HIGH_UNSPECIFIED" => Some(Self::HighUnspecified),
38 "DATA_MODE_TYPE_ARCHIVE" => Some(Self::Archive),
39 _ => None,
40 }
41 }
42}
43#[derive(serde::Serialize, serde::Deserialize)]
45#[serde(rename_all = "snake_case")]
46#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
47#[repr(i32)]
48pub enum SpanRelationType {
49 NoneUnspecified = 0,
51 Other = 1,
53 Parent = 2,
55 Root = 3,
57}
58impl SpanRelationType {
59 pub fn as_str_name(&self) -> &'static str {
64 match self {
65 Self::NoneUnspecified => "SPAN_RELATION_TYPE_NONE_UNSPECIFIED",
66 Self::Other => "SPAN_RELATION_TYPE_OTHER",
67 Self::Parent => "SPAN_RELATION_TYPE_PARENT",
68 Self::Root => "SPAN_RELATION_TYPE_ROOT",
69 }
70 }
71 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
73 match value {
74 "SPAN_RELATION_TYPE_NONE_UNSPECIFIED" => Some(Self::NoneUnspecified),
75 "SPAN_RELATION_TYPE_OTHER" => Some(Self::Other),
76 "SPAN_RELATION_TYPE_PARENT" => Some(Self::Parent),
77 "SPAN_RELATION_TYPE_ROOT" => Some(Self::Root),
78 _ => None,
79 }
80 }
81}
82#[derive(serde::Serialize, serde::Deserialize)]
83#[serde(rename_all = "snake_case")]
84#[derive(Clone, PartialEq, ::prost::Message)]
85pub struct ObservationField {
86 #[prost(message, repeated, tag = "1")]
87 pub keypath: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
88 #[prost(enumeration = "DatasetScope", tag = "2")]
89 pub scope: i32,
90}
91#[derive(serde::Serialize, serde::Deserialize)]
92#[serde(rename_all = "snake_case")]
93#[derive(Clone, PartialEq, ::prost::Message)]
94pub struct SpanObservationField {
95 #[prost(message, repeated, tag = "1")]
96 pub keypath: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
97 #[prost(enumeration = "DatasetScope", tag = "2")]
98 pub scope: i32,
99 #[prost(enumeration = "SpanRelationType", tag = "3")]
100 pub relation_type: i32,
101}
102#[derive(serde::Serialize, serde::Deserialize)]
103#[serde(rename_all = "snake_case")]
104#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
105#[repr(i32)]
106pub enum DatasetScope {
107 Unspecified = 0,
108 UserData = 1,
109 Label = 2,
110 Metadata = 3,
111}
112impl DatasetScope {
113 pub fn as_str_name(&self) -> &'static str {
118 match self {
119 Self::Unspecified => "DATASET_SCOPE_UNSPECIFIED",
120 Self::UserData => "DATASET_SCOPE_USER_DATA",
121 Self::Label => "DATASET_SCOPE_LABEL",
122 Self::Metadata => "DATASET_SCOPE_METADATA",
123 }
124 }
125 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
127 match value {
128 "DATASET_SCOPE_UNSPECIFIED" => Some(Self::Unspecified),
129 "DATASET_SCOPE_USER_DATA" => Some(Self::UserData),
130 "DATASET_SCOPE_LABEL" => Some(Self::Label),
131 "DATASET_SCOPE_METADATA" => Some(Self::Metadata),
132 _ => None,
133 }
134 }
135}
136#[derive(serde::Serialize, serde::Deserialize)]
137#[serde(rename_all = "snake_case")]
138#[derive(Clone, PartialEq, ::prost::Message)]
139pub struct DataprimeQuery {
140 #[prost(string, tag = "1")]
141 pub text: ::prost::alloc::string::String,
142}
143#[derive(serde::Serialize, serde::Deserialize)]
144#[serde(rename_all = "snake_case")]
145#[derive(Clone, PartialEq, ::prost::Message)]
146pub struct SerializedDataprimeQuery {
147 #[prost(bytes = "vec", tag = "1")]
148 pub data: ::prost::alloc::vec::Vec<u8>,
149}
150#[derive(serde::Serialize, serde::Deserialize)]
151#[serde(rename_all = "snake_case")]
152#[derive(Clone, PartialEq, ::prost::Message)]
153pub struct FullDataprimeQuery {
154 #[prost(message, optional, tag = "1")]
155 pub serialized: ::core::option::Option<SerializedDataprimeQuery>,
156 #[prost(message, optional, tag = "2")]
157 pub raw: ::core::option::Option<DataprimeQuery>,
158}
159#[derive(serde::Serialize, serde::Deserialize)]
160#[serde(rename_all = "snake_case")]
161#[derive(Clone, PartialEq, ::prost::Message)]
162pub struct PromQlQuery {
163 #[prost(message, optional, tag = "1")]
164 pub value: ::core::option::Option<::prost::alloc::string::String>,
165}
166#[derive(serde::Serialize, serde::Deserialize)]
167#[serde(rename_all = "snake_case")]
168#[derive(Clone, PartialEq, ::prost::Message)]
169pub struct LuceneQuery {
170 #[prost(message, optional, tag = "1")]
171 pub value: ::core::option::Option<::prost::alloc::string::String>,
172}
173#[derive(serde::Serialize, serde::Deserialize)]
174#[serde(rename_all = "snake_case")]
175#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
176#[repr(i32)]
177pub enum PromQlQueryType {
178 Unspecified = 0,
179 Range = 1,
180 Instant = 2,
181}
182impl PromQlQueryType {
183 pub fn as_str_name(&self) -> &'static str {
188 match self {
189 Self::Unspecified => "PROM_QL_QUERY_TYPE_UNSPECIFIED",
190 Self::Range => "PROM_QL_QUERY_TYPE_RANGE",
191 Self::Instant => "PROM_QL_QUERY_TYPE_INSTANT",
192 }
193 }
194 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
196 match value {
197 "PROM_QL_QUERY_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
198 "PROM_QL_QUERY_TYPE_RANGE" => Some(Self::Range),
199 "PROM_QL_QUERY_TYPE_INSTANT" => Some(Self::Instant),
200 _ => None,
201 }
202 }
203}
204#[derive(serde::Serialize, serde::Deserialize)]
205#[serde(rename_all = "snake_case")]
206#[derive(Clone, PartialEq, ::prost::Message)]
207pub struct SpanField {
208 #[prost(oneof = "span_field::Value", tags = "1, 2, 3")]
209 pub value: ::core::option::Option<span_field::Value>,
210}
211pub mod span_field {
213 #[derive(serde::Serialize, serde::Deserialize)]
214 #[serde(rename_all = "snake_case")]
215 #[derive(
216 Clone,
217 Copy,
218 Debug,
219 PartialEq,
220 Eq,
221 Hash,
222 PartialOrd,
223 Ord,
224 ::prost::Enumeration
225 )]
226 #[repr(i32)]
227 pub enum MetadataField {
228 Unspecified = 0,
229 ApplicationName = 1,
230 SubsystemName = 2,
231 ServiceName = 3,
232 OperationName = 4,
233 }
234 impl MetadataField {
235 pub fn as_str_name(&self) -> &'static str {
240 match self {
241 Self::Unspecified => "METADATA_FIELD_UNSPECIFIED",
242 Self::ApplicationName => "METADATA_FIELD_APPLICATION_NAME",
243 Self::SubsystemName => "METADATA_FIELD_SUBSYSTEM_NAME",
244 Self::ServiceName => "METADATA_FIELD_SERVICE_NAME",
245 Self::OperationName => "METADATA_FIELD_OPERATION_NAME",
246 }
247 }
248 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
250 match value {
251 "METADATA_FIELD_UNSPECIFIED" => Some(Self::Unspecified),
252 "METADATA_FIELD_APPLICATION_NAME" => Some(Self::ApplicationName),
253 "METADATA_FIELD_SUBSYSTEM_NAME" => Some(Self::SubsystemName),
254 "METADATA_FIELD_SERVICE_NAME" => Some(Self::ServiceName),
255 "METADATA_FIELD_OPERATION_NAME" => Some(Self::OperationName),
256 _ => None,
257 }
258 }
259 }
260 #[derive(serde::Serialize, serde::Deserialize)]
261 #[serde(rename_all = "snake_case")]
262 #[derive(Clone, PartialEq, ::prost::Oneof)]
263 pub enum Value {
264 #[prost(enumeration = "MetadataField", tag = "1")]
265 MetadataField(i32),
266 #[prost(message, tag = "2")]
267 TagField(::prost::alloc::string::String),
268 #[prost(message, tag = "3")]
269 ProcessTagField(::prost::alloc::string::String),
270 }
271}
272#[derive(serde::Serialize, serde::Deserialize)]
273#[serde(rename_all = "snake_case")]
274#[derive(Clone, PartialEq, ::prost::Message)]
275pub struct LogsAggregation {
276 #[prost(oneof = "logs_aggregation::Value", tags = "1, 2, 3, 4, 5, 6, 7")]
277 pub value: ::core::option::Option<logs_aggregation::Value>,
278}
279pub mod logs_aggregation {
281 #[derive(serde::Serialize, serde::Deserialize)]
282 #[serde(rename_all = "snake_case")]
283 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
284 pub struct Count {}
285 #[derive(serde::Serialize, serde::Deserialize)]
286 #[serde(rename_all = "snake_case")]
287 #[derive(Clone, PartialEq, ::prost::Message)]
288 pub struct CountDistinct {
289 #[prost(message, optional, tag = "1")]
290 pub field: ::core::option::Option<::prost::alloc::string::String>,
291 #[prost(message, optional, tag = "2")]
292 pub observation_field: ::core::option::Option<super::ObservationField>,
293 }
294 #[derive(serde::Serialize, serde::Deserialize)]
295 #[serde(rename_all = "snake_case")]
296 #[derive(Clone, PartialEq, ::prost::Message)]
297 pub struct Sum {
298 #[prost(message, optional, tag = "1")]
299 pub field: ::core::option::Option<::prost::alloc::string::String>,
300 #[prost(message, optional, tag = "2")]
301 pub observation_field: ::core::option::Option<super::ObservationField>,
302 }
303 #[derive(serde::Serialize, serde::Deserialize)]
304 #[serde(rename_all = "snake_case")]
305 #[derive(Clone, PartialEq, ::prost::Message)]
306 pub struct Average {
307 #[prost(message, optional, tag = "1")]
308 pub field: ::core::option::Option<::prost::alloc::string::String>,
309 #[prost(message, optional, tag = "2")]
310 pub observation_field: ::core::option::Option<super::ObservationField>,
311 }
312 #[derive(serde::Serialize, serde::Deserialize)]
313 #[serde(rename_all = "snake_case")]
314 #[derive(Clone, PartialEq, ::prost::Message)]
315 pub struct Min {
316 #[prost(message, optional, tag = "1")]
317 pub field: ::core::option::Option<::prost::alloc::string::String>,
318 #[prost(message, optional, tag = "2")]
319 pub observation_field: ::core::option::Option<super::ObservationField>,
320 }
321 #[derive(serde::Serialize, serde::Deserialize)]
322 #[serde(rename_all = "snake_case")]
323 #[derive(Clone, PartialEq, ::prost::Message)]
324 pub struct Max {
325 #[prost(message, optional, tag = "1")]
326 pub field: ::core::option::Option<::prost::alloc::string::String>,
327 #[prost(message, optional, tag = "2")]
328 pub observation_field: ::core::option::Option<super::ObservationField>,
329 }
330 #[derive(serde::Serialize, serde::Deserialize)]
331 #[serde(rename_all = "snake_case")]
332 #[derive(Clone, PartialEq, ::prost::Message)]
333 pub struct Percentile {
334 #[prost(message, optional, tag = "1")]
335 pub field: ::core::option::Option<::prost::alloc::string::String>,
336 #[prost(message, optional, tag = "2")]
338 pub percent: ::core::option::Option<f64>,
339 #[prost(message, optional, tag = "3")]
340 pub observation_field: ::core::option::Option<super::ObservationField>,
341 }
342 #[derive(serde::Serialize, serde::Deserialize)]
343 #[serde(rename_all = "snake_case")]
344 #[derive(Clone, PartialEq, ::prost::Oneof)]
345 pub enum Value {
346 #[prost(message, tag = "1")]
347 Count(Count),
348 #[prost(message, tag = "2")]
349 CountDistinct(CountDistinct),
350 #[prost(message, tag = "3")]
351 Sum(Sum),
352 #[prost(message, tag = "4")]
353 Average(Average),
354 #[prost(message, tag = "5")]
355 Min(Min),
356 #[prost(message, tag = "6")]
357 Max(Max),
358 #[prost(message, tag = "7")]
359 Percentile(Percentile),
360 }
361}
362#[derive(serde::Serialize, serde::Deserialize)]
363#[serde(rename_all = "snake_case")]
364#[derive(Clone, Copy, PartialEq, ::prost::Message)]
365pub struct SpansAggregation {
366 #[prost(oneof = "spans_aggregation::Aggregation", tags = "1, 2")]
367 pub aggregation: ::core::option::Option<spans_aggregation::Aggregation>,
368}
369pub mod spans_aggregation {
371 #[derive(serde::Serialize, serde::Deserialize)]
372 #[serde(rename_all = "snake_case")]
373 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
374 pub struct MetricAggregation {
375 #[prost(enumeration = "metric_aggregation::MetricField", tag = "1")]
376 pub metric_field: i32,
377 #[prost(enumeration = "metric_aggregation::MetricAggregationType", tag = "2")]
378 pub aggregation_type: i32,
379 }
380 pub mod metric_aggregation {
382 #[derive(serde::Serialize, serde::Deserialize)]
383 #[serde(rename_all = "snake_case")]
384 #[derive(
385 Clone,
386 Copy,
387 Debug,
388 PartialEq,
389 Eq,
390 Hash,
391 PartialOrd,
392 Ord,
393 ::prost::Enumeration
394 )]
395 #[repr(i32)]
396 pub enum MetricField {
397 Unspecified = 0,
398 Duration = 1,
399 }
400 impl MetricField {
401 pub fn as_str_name(&self) -> &'static str {
406 match self {
407 Self::Unspecified => "METRIC_FIELD_UNSPECIFIED",
408 Self::Duration => "METRIC_FIELD_DURATION",
409 }
410 }
411 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
413 match value {
414 "METRIC_FIELD_UNSPECIFIED" => Some(Self::Unspecified),
415 "METRIC_FIELD_DURATION" => Some(Self::Duration),
416 _ => None,
417 }
418 }
419 }
420 #[derive(serde::Serialize, serde::Deserialize)]
421 #[serde(rename_all = "snake_case")]
422 #[derive(
423 Clone,
424 Copy,
425 Debug,
426 PartialEq,
427 Eq,
428 Hash,
429 PartialOrd,
430 Ord,
431 ::prost::Enumeration
432 )]
433 #[repr(i32)]
434 pub enum MetricAggregationType {
435 Unspecified = 0,
436 Min = 1,
437 Max = 2,
438 Average = 3,
439 Sum = 4,
440 Percentile99 = 5,
441 Percentile95 = 6,
442 Percentile50 = 7,
443 }
444 impl MetricAggregationType {
445 pub fn as_str_name(&self) -> &'static str {
450 match self {
451 Self::Unspecified => "METRIC_AGGREGATION_TYPE_UNSPECIFIED",
452 Self::Min => "METRIC_AGGREGATION_TYPE_MIN",
453 Self::Max => "METRIC_AGGREGATION_TYPE_MAX",
454 Self::Average => "METRIC_AGGREGATION_TYPE_AVERAGE",
455 Self::Sum => "METRIC_AGGREGATION_TYPE_SUM",
456 Self::Percentile99 => "METRIC_AGGREGATION_TYPE_PERCENTILE_99",
457 Self::Percentile95 => "METRIC_AGGREGATION_TYPE_PERCENTILE_95",
458 Self::Percentile50 => "METRIC_AGGREGATION_TYPE_PERCENTILE_50",
459 }
460 }
461 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
463 match value {
464 "METRIC_AGGREGATION_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
465 "METRIC_AGGREGATION_TYPE_MIN" => Some(Self::Min),
466 "METRIC_AGGREGATION_TYPE_MAX" => Some(Self::Max),
467 "METRIC_AGGREGATION_TYPE_AVERAGE" => Some(Self::Average),
468 "METRIC_AGGREGATION_TYPE_SUM" => Some(Self::Sum),
469 "METRIC_AGGREGATION_TYPE_PERCENTILE_99" => Some(Self::Percentile99),
470 "METRIC_AGGREGATION_TYPE_PERCENTILE_95" => Some(Self::Percentile95),
471 "METRIC_AGGREGATION_TYPE_PERCENTILE_50" => Some(Self::Percentile50),
472 _ => None,
473 }
474 }
475 }
476 }
477 #[derive(serde::Serialize, serde::Deserialize)]
478 #[serde(rename_all = "snake_case")]
479 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
480 pub struct DimensionAggregation {
481 #[prost(enumeration = "dimension_aggregation::DimensionField", tag = "1")]
482 pub dimension_field: i32,
483 #[prost(
484 enumeration = "dimension_aggregation::DimensionAggregationType",
485 tag = "2"
486 )]
487 pub aggregation_type: i32,
488 }
489 pub mod dimension_aggregation {
491 #[derive(serde::Serialize, serde::Deserialize)]
492 #[serde(rename_all = "snake_case")]
493 #[derive(
494 Clone,
495 Copy,
496 Debug,
497 PartialEq,
498 Eq,
499 Hash,
500 PartialOrd,
501 Ord,
502 ::prost::Enumeration
503 )]
504 #[repr(i32)]
505 pub enum DimensionField {
506 Unspecified = 0,
507 TraceId = 1,
508 }
509 impl DimensionField {
510 pub fn as_str_name(&self) -> &'static str {
515 match self {
516 Self::Unspecified => "DIMENSION_FIELD_UNSPECIFIED",
517 Self::TraceId => "DIMENSION_FIELD_TRACE_ID",
518 }
519 }
520 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
522 match value {
523 "DIMENSION_FIELD_UNSPECIFIED" => Some(Self::Unspecified),
524 "DIMENSION_FIELD_TRACE_ID" => Some(Self::TraceId),
525 _ => None,
526 }
527 }
528 }
529 #[derive(serde::Serialize, serde::Deserialize)]
530 #[serde(rename_all = "snake_case")]
531 #[derive(
532 Clone,
533 Copy,
534 Debug,
535 PartialEq,
536 Eq,
537 Hash,
538 PartialOrd,
539 Ord,
540 ::prost::Enumeration
541 )]
542 #[repr(i32)]
543 pub enum DimensionAggregationType {
544 Unspecified = 0,
545 UniqueCount = 1,
546 ErrorCount = 2,
547 }
548 impl DimensionAggregationType {
549 pub fn as_str_name(&self) -> &'static str {
554 match self {
555 Self::Unspecified => "DIMENSION_AGGREGATION_TYPE_UNSPECIFIED",
556 Self::UniqueCount => "DIMENSION_AGGREGATION_TYPE_UNIQUE_COUNT",
557 Self::ErrorCount => "DIMENSION_AGGREGATION_TYPE_ERROR_COUNT",
558 }
559 }
560 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
562 match value {
563 "DIMENSION_AGGREGATION_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
564 "DIMENSION_AGGREGATION_TYPE_UNIQUE_COUNT" => Some(Self::UniqueCount),
565 "DIMENSION_AGGREGATION_TYPE_ERROR_COUNT" => Some(Self::ErrorCount),
566 _ => None,
567 }
568 }
569 }
570 }
571 #[derive(serde::Serialize, serde::Deserialize)]
572 #[serde(rename_all = "snake_case")]
573 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
574 pub enum Aggregation {
575 #[prost(message, tag = "1")]
576 MetricAggregation(MetricAggregation),
577 #[prost(message, tag = "2")]
578 DimensionAggregation(DimensionAggregation),
579 }
580}
581#[derive(serde::Serialize, serde::Deserialize)]
582#[serde(rename_all = "snake_case")]
583#[derive(Clone, Copy, PartialEq, ::prost::Message)]
584pub struct TimeFrameSelect {
585 #[prost(oneof = "time_frame_select::Value", tags = "1, 2")]
586 pub value: ::core::option::Option<time_frame_select::Value>,
587}
588pub mod time_frame_select {
590 #[derive(serde::Serialize, serde::Deserialize)]
591 #[serde(rename_all = "snake_case")]
592 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
593 pub enum Value {
594 #[prost(message, tag = "1")]
595 AbsoluteTimeFrame(super::TimeFrame),
596 #[prost(message, tag = "2")]
597 RelativeTimeFrame(::prost_wkt_types::Duration),
598 }
599}
600#[derive(serde::Serialize, serde::Deserialize)]
601#[serde(rename_all = "snake_case")]
602#[derive(Clone, Copy, PartialEq, ::prost::Message)]
603pub struct TimeFrame {
604 #[prost(message, optional, tag = "1")]
605 pub from: ::core::option::Option<::prost_wkt_types::Timestamp>,
606 #[prost(message, optional, tag = "2")]
607 pub to: ::core::option::Option<::prost_wkt_types::Timestamp>,
608}
609#[derive(serde::Serialize, serde::Deserialize)]
610#[serde(rename_all = "snake_case")]
611#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
612#[repr(i32)]
613pub enum OrderDirection {
614 Unspecified = 0,
615 Asc = 1,
616 Desc = 2,
617 None = 3,
618}
619impl OrderDirection {
620 pub fn as_str_name(&self) -> &'static str {
625 match self {
626 Self::Unspecified => "ORDER_DIRECTION_UNSPECIFIED",
627 Self::Asc => "ORDER_DIRECTION_ASC",
628 Self::Desc => "ORDER_DIRECTION_DESC",
629 Self::None => "ORDER_DIRECTION_NONE",
630 }
631 }
632 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
634 match value {
635 "ORDER_DIRECTION_UNSPECIFIED" => Some(Self::Unspecified),
636 "ORDER_DIRECTION_ASC" => Some(Self::Asc),
637 "ORDER_DIRECTION_DESC" => Some(Self::Desc),
638 "ORDER_DIRECTION_NONE" => Some(Self::None),
639 _ => None,
640 }
641 }
642}
643#[derive(serde::Serialize, serde::Deserialize)]
644#[serde(rename_all = "snake_case")]
645#[derive(Clone, PartialEq, ::prost::Message)]
646pub struct OrderingField {
647 #[prost(message, optional, tag = "1")]
648 pub field: ::core::option::Option<::prost::alloc::string::String>,
649 #[prost(enumeration = "OrderDirection", tag = "2")]
650 pub order_direction: i32,
651}
652#[derive(serde::Serialize, serde::Deserialize)]
653#[serde(rename_all = "snake_case")]
654#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
655#[repr(i32)]
656pub enum MetricsSeriesLimitType {
657 Unspecified = 0,
659 BySeriesCount = 1,
661 ByPointCount = 2,
663}
664impl MetricsSeriesLimitType {
665 pub fn as_str_name(&self) -> &'static str {
670 match self {
671 Self::Unspecified => "METRICS_SERIES_LIMIT_TYPE_UNSPECIFIED",
672 Self::BySeriesCount => "METRICS_SERIES_LIMIT_TYPE_BY_SERIES_COUNT",
673 Self::ByPointCount => "METRICS_SERIES_LIMIT_TYPE_BY_POINT_COUNT",
674 }
675 }
676 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
678 match value {
679 "METRICS_SERIES_LIMIT_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
680 "METRICS_SERIES_LIMIT_TYPE_BY_SERIES_COUNT" => Some(Self::BySeriesCount),
681 "METRICS_SERIES_LIMIT_TYPE_BY_POINT_COUNT" => Some(Self::ByPointCount),
682 _ => None,
683 }
684 }
685}
686#[derive(serde::Serialize, serde::Deserialize)]
691#[serde(rename_all = "snake_case")]
692#[derive(Clone, PartialEq, ::prost::Message)]
693pub struct Action {
694 #[prost(message, optional, tag = "1")]
695 pub id: ::core::option::Option<::prost::alloc::string::String>,
696 #[prost(message, optional, tag = "2")]
697 pub name: ::core::option::Option<::prost::alloc::string::String>,
698 #[prost(message, optional, tag = "3")]
699 pub should_open_in_new_window: ::core::option::Option<bool>,
700 #[prost(message, optional, tag = "4")]
701 pub is_private: ::core::option::Option<bool>,
702 #[prost(message, optional, tag = "5")]
703 pub dashboard_id: ::core::option::Option<::prost::alloc::string::String>,
704 #[prost(message, optional, tag = "6")]
705 pub widget_id: ::core::option::Option<::prost::alloc::string::String>,
706 #[prost(message, optional, tag = "7")]
707 pub definition: ::core::option::Option<ActionDefinition>,
708 #[prost(enumeration = "ActionDataSourceType", optional, tag = "8")]
709 pub data_source: ::core::option::Option<i32>,
710}
711#[derive(serde::Serialize, serde::Deserialize)]
712#[serde(rename_all = "snake_case")]
713#[derive(Clone, PartialEq, ::prost::Message)]
714pub struct DashboardAction {
715 #[prost(message, optional, tag = "1")]
716 pub id: ::core::option::Option<::prost::alloc::string::String>,
717 #[prost(message, optional, tag = "2")]
718 pub name: ::core::option::Option<::prost::alloc::string::String>,
719 #[prost(message, optional, tag = "3")]
720 pub should_open_in_new_window: ::core::option::Option<bool>,
721 #[prost(message, optional, tag = "4")]
722 pub widget_id: ::core::option::Option<::prost::alloc::string::String>,
723 #[prost(message, optional, tag = "7")]
724 pub query_id: ::core::option::Option<::prost::alloc::string::String>,
725 #[prost(message, optional, tag = "5")]
726 pub definition: ::core::option::Option<ActionDefinition>,
727 #[prost(enumeration = "ActionDataSourceType", optional, tag = "6")]
728 pub data_source: ::core::option::Option<i32>,
729}
730#[derive(serde::Serialize, serde::Deserialize)]
731#[serde(rename_all = "snake_case")]
732#[derive(Clone, PartialEq, ::prost::Message)]
733pub struct ActionDefinition {
734 #[prost(oneof = "action_definition::Type", tags = "1, 2")]
735 pub r#type: ::core::option::Option<action_definition::Type>,
736}
737pub mod action_definition {
739 #[derive(serde::Serialize, serde::Deserialize)]
740 #[serde(rename_all = "snake_case")]
741 #[derive(Clone, PartialEq, ::prost::Message)]
742 pub struct CustomAction {
743 #[prost(message, optional, tag = "1")]
744 pub url: ::core::option::Option<::prost::alloc::string::String>,
745 }
746 #[derive(serde::Serialize, serde::Deserialize)]
747 #[serde(rename_all = "snake_case")]
748 #[derive(Clone, PartialEq, ::prost::Message)]
749 pub struct GoToDashboardTemplateAction {
750 #[prost(message, optional, tag = "1")]
751 pub dashboard_id: ::core::option::Option<::prost::alloc::string::String>,
752 }
753 #[derive(serde::Serialize, serde::Deserialize)]
754 #[serde(rename_all = "snake_case")]
755 #[derive(Clone, PartialEq, ::prost::Oneof)]
756 pub enum Type {
757 #[prost(message, tag = "1")]
758 CustomAction(CustomAction),
759 #[prost(message, tag = "2")]
760 GoToDashboardAction(GoToDashboardTemplateAction),
761 }
762}
763#[derive(serde::Serialize, serde::Deserialize)]
764#[serde(rename_all = "snake_case")]
765#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
766#[repr(i32)]
767pub enum ActionDataSourceType {
768 NoneUnspecified = 0,
769 Logs = 1,
770 Spans = 2,
771 Metrics = 3,
772 Dataprime = 4,
773}
774impl ActionDataSourceType {
775 pub fn as_str_name(&self) -> &'static str {
780 match self {
781 Self::NoneUnspecified => "ACTION_DATA_SOURCE_TYPE_NONE_UNSPECIFIED",
782 Self::Logs => "ACTION_DATA_SOURCE_TYPE_LOGS",
783 Self::Spans => "ACTION_DATA_SOURCE_TYPE_SPANS",
784 Self::Metrics => "ACTION_DATA_SOURCE_TYPE_METRICS",
785 Self::Dataprime => "ACTION_DATA_SOURCE_TYPE_DATAPRIME",
786 }
787 }
788 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
790 match value {
791 "ACTION_DATA_SOURCE_TYPE_NONE_UNSPECIFIED" => Some(Self::NoneUnspecified),
792 "ACTION_DATA_SOURCE_TYPE_LOGS" => Some(Self::Logs),
793 "ACTION_DATA_SOURCE_TYPE_SPANS" => Some(Self::Spans),
794 "ACTION_DATA_SOURCE_TYPE_METRICS" => Some(Self::Metrics),
795 "ACTION_DATA_SOURCE_TYPE_DATAPRIME" => Some(Self::Dataprime),
796 _ => None,
797 }
798 }
799}