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}
618impl OrderDirection {
619 pub fn as_str_name(&self) -> &'static str {
624 match self {
625 Self::Unspecified => "ORDER_DIRECTION_UNSPECIFIED",
626 Self::Asc => "ORDER_DIRECTION_ASC",
627 Self::Desc => "ORDER_DIRECTION_DESC",
628 }
629 }
630 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
632 match value {
633 "ORDER_DIRECTION_UNSPECIFIED" => Some(Self::Unspecified),
634 "ORDER_DIRECTION_ASC" => Some(Self::Asc),
635 "ORDER_DIRECTION_DESC" => Some(Self::Desc),
636 _ => None,
637 }
638 }
639}
640#[derive(serde::Serialize, serde::Deserialize)]
641#[serde(rename_all = "snake_case")]
642#[derive(Clone, PartialEq, ::prost::Message)]
643pub struct OrderingField {
644 #[prost(message, optional, tag = "1")]
645 pub field: ::core::option::Option<::prost::alloc::string::String>,
646 #[prost(enumeration = "OrderDirection", tag = "2")]
647 pub order_direction: i32,
648}
649#[derive(serde::Serialize, serde::Deserialize)]
650#[serde(rename_all = "snake_case")]
651#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
652#[repr(i32)]
653pub enum MetricsSeriesLimitType {
654 Unspecified = 0,
656 BySeriesCount = 1,
658 ByPointCount = 2,
660}
661impl MetricsSeriesLimitType {
662 pub fn as_str_name(&self) -> &'static str {
667 match self {
668 Self::Unspecified => "METRICS_SERIES_LIMIT_TYPE_UNSPECIFIED",
669 Self::BySeriesCount => "METRICS_SERIES_LIMIT_TYPE_BY_SERIES_COUNT",
670 Self::ByPointCount => "METRICS_SERIES_LIMIT_TYPE_BY_POINT_COUNT",
671 }
672 }
673 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
675 match value {
676 "METRICS_SERIES_LIMIT_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
677 "METRICS_SERIES_LIMIT_TYPE_BY_SERIES_COUNT" => Some(Self::BySeriesCount),
678 "METRICS_SERIES_LIMIT_TYPE_BY_POINT_COUNT" => Some(Self::ByPointCount),
679 _ => None,
680 }
681 }
682}
683#[derive(serde::Serialize, serde::Deserialize)]
688#[serde(rename_all = "snake_case")]
689#[derive(Clone, PartialEq, ::prost::Message)]
690pub struct Action {
691 #[prost(message, optional, tag = "1")]
692 pub id: ::core::option::Option<::prost::alloc::string::String>,
693 #[prost(message, optional, tag = "2")]
694 pub name: ::core::option::Option<::prost::alloc::string::String>,
695 #[prost(message, optional, tag = "3")]
696 pub should_open_in_new_window: ::core::option::Option<bool>,
697 #[prost(message, optional, tag = "4")]
698 pub is_private: ::core::option::Option<bool>,
699 #[prost(message, optional, tag = "5")]
700 pub dashboard_id: ::core::option::Option<::prost::alloc::string::String>,
701 #[prost(message, optional, tag = "6")]
702 pub widget_id: ::core::option::Option<::prost::alloc::string::String>,
703 #[prost(message, optional, tag = "7")]
704 pub definition: ::core::option::Option<ActionDefinition>,
705 #[prost(enumeration = "ActionDataSourceType", optional, tag = "8")]
706 pub data_source: ::core::option::Option<i32>,
707}
708#[derive(serde::Serialize, serde::Deserialize)]
709#[serde(rename_all = "snake_case")]
710#[derive(Clone, PartialEq, ::prost::Message)]
711pub struct DashboardAction {
712 #[prost(message, optional, tag = "1")]
713 pub id: ::core::option::Option<::prost::alloc::string::String>,
714 #[prost(message, optional, tag = "2")]
715 pub name: ::core::option::Option<::prost::alloc::string::String>,
716 #[prost(message, optional, tag = "3")]
717 pub should_open_in_new_window: ::core::option::Option<bool>,
718 #[prost(message, optional, tag = "4")]
719 pub widget_id: ::core::option::Option<::prost::alloc::string::String>,
720 #[prost(message, optional, tag = "5")]
721 pub definition: ::core::option::Option<ActionDefinition>,
722 #[prost(enumeration = "ActionDataSourceType", optional, tag = "6")]
723 pub data_source: ::core::option::Option<i32>,
724}
725#[derive(serde::Serialize, serde::Deserialize)]
726#[serde(rename_all = "snake_case")]
727#[derive(Clone, PartialEq, ::prost::Message)]
728pub struct ActionDefinition {
729 #[prost(oneof = "action_definition::Type", tags = "1, 2")]
730 pub r#type: ::core::option::Option<action_definition::Type>,
731}
732pub mod action_definition {
734 #[derive(serde::Serialize, serde::Deserialize)]
735 #[serde(rename_all = "snake_case")]
736 #[derive(Clone, PartialEq, ::prost::Message)]
737 pub struct CustomAction {
738 #[prost(message, optional, tag = "1")]
739 pub url: ::core::option::Option<::prost::alloc::string::String>,
740 }
741 #[derive(serde::Serialize, serde::Deserialize)]
742 #[serde(rename_all = "snake_case")]
743 #[derive(Clone, PartialEq, ::prost::Message)]
744 pub struct GoToDashboardTemplateAction {
745 #[prost(message, optional, tag = "1")]
746 pub dashboard_id: ::core::option::Option<::prost::alloc::string::String>,
747 }
748 #[derive(serde::Serialize, serde::Deserialize)]
749 #[serde(rename_all = "snake_case")]
750 #[derive(Clone, PartialEq, ::prost::Oneof)]
751 pub enum Type {
752 #[prost(message, tag = "1")]
753 CustomAction(CustomAction),
754 #[prost(message, tag = "2")]
755 GoToDashboardAction(GoToDashboardTemplateAction),
756 }
757}
758#[derive(serde::Serialize, serde::Deserialize)]
759#[serde(rename_all = "snake_case")]
760#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
761#[repr(i32)]
762pub enum ActionDataSourceType {
763 NoneUnspecified = 0,
764 Logs = 1,
765 Spans = 2,
766 Metrics = 3,
767 Dataprime = 4,
768}
769impl ActionDataSourceType {
770 pub fn as_str_name(&self) -> &'static str {
775 match self {
776 Self::NoneUnspecified => "ACTION_DATA_SOURCE_TYPE_NONE_UNSPECIFIED",
777 Self::Logs => "ACTION_DATA_SOURCE_TYPE_LOGS",
778 Self::Spans => "ACTION_DATA_SOURCE_TYPE_SPANS",
779 Self::Metrics => "ACTION_DATA_SOURCE_TYPE_METRICS",
780 Self::Dataprime => "ACTION_DATA_SOURCE_TYPE_DATAPRIME",
781 }
782 }
783 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
785 match value {
786 "ACTION_DATA_SOURCE_TYPE_NONE_UNSPECIFIED" => Some(Self::NoneUnspecified),
787 "ACTION_DATA_SOURCE_TYPE_LOGS" => Some(Self::Logs),
788 "ACTION_DATA_SOURCE_TYPE_SPANS" => Some(Self::Spans),
789 "ACTION_DATA_SOURCE_TYPE_METRICS" => Some(Self::Metrics),
790 "ACTION_DATA_SOURCE_TYPE_DATAPRIME" => Some(Self::Dataprime),
791 _ => None,
792 }
793 }
794}