1#[derive(serde::Serialize, serde::Deserialize)]
3#[serde(rename_all = "snake_case")]
4#[derive(Clone, PartialEq, ::prost::Message)]
5pub struct BarChart {
6 #[prost(message, optional, tag = "1")]
7 pub query: ::core::option::Option<bar_chart::Query>,
8 #[prost(message, optional, tag = "2")]
9 pub max_bars_per_chart: ::core::option::Option<i32>,
10 #[prost(message, optional, tag = "3")]
11 pub group_name_template: ::core::option::Option<::prost::alloc::string::String>,
12 #[prost(message, optional, tag = "4")]
13 pub stack_definition: ::core::option::Option<bar_chart::StackDefinition>,
14 #[prost(enumeration = "common::ScaleType", tag = "5")]
15 pub scale_type: i32,
16 #[prost(message, optional, tag = "6")]
17 pub colors_by: ::core::option::Option<common::ColorsBy>,
18 #[prost(message, optional, tag = "7")]
19 pub x_axis: ::core::option::Option<bar_chart::XAxis>,
20 #[prost(enumeration = "common::Unit", tag = "8")]
21 pub unit: i32,
22 #[prost(enumeration = "common::SortByType", tag = "9")]
23 pub sort_by: i32,
24 #[prost(message, optional, tag = "10")]
25 pub color_scheme: ::core::option::Option<::prost::alloc::string::String>,
26 #[prost(enumeration = "common::DataModeType", tag = "11")]
27 pub data_mode_type: i32,
28 #[prost(enumeration = "BarValueDisplay", tag = "12")]
29 pub bar_value_display: i32,
30 #[prost(message, optional, tag = "13")]
31 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
32 #[prost(message, optional, tag = "14")]
33 pub decimal: ::core::option::Option<i32>,
34 #[prost(message, optional, tag = "15")]
35 pub legend: ::core::option::Option<common::Legend>,
36 #[prost(message, optional, tag = "16")]
37 pub hash_colors: ::core::option::Option<bool>,
38 #[prost(message, optional, tag = "17")]
39 pub y_axis_min: ::core::option::Option<f32>,
40 #[prost(message, optional, tag = "18")]
41 pub y_axis_max: ::core::option::Option<f32>,
42 #[prost(message, optional, tag = "19")]
43 pub decimal_precision: ::core::option::Option<bool>,
44}
45pub mod bar_chart {
47 #[derive(serde::Serialize, serde::Deserialize)]
48 #[serde(rename_all = "snake_case")]
49 #[derive(Clone, PartialEq, ::prost::Message)]
50 pub struct Query {
51 #[prost(oneof = "query::Value", tags = "1, 2, 3, 4")]
52 pub value: ::core::option::Option<query::Value>,
53 }
54 pub mod query {
56 #[derive(serde::Serialize, serde::Deserialize)]
57 #[serde(rename_all = "snake_case")]
58 #[derive(Clone, PartialEq, ::prost::Oneof)]
59 pub enum Value {
60 #[prost(message, tag = "1")]
61 Logs(super::LogsQuery),
62 #[prost(message, tag = "2")]
63 Spans(super::SpansQuery),
64 #[prost(message, tag = "3")]
65 Metrics(super::MetricsQuery),
66 #[prost(message, tag = "4")]
67 Dataprime(super::DataprimeQuery),
68 }
69 }
70 #[derive(serde::Serialize, serde::Deserialize)]
71 #[serde(rename_all = "snake_case")]
72 #[derive(Clone, PartialEq, ::prost::Message)]
73 pub struct StackDefinition {
74 #[prost(message, optional, tag = "1")]
75 pub max_slices_per_bar: ::core::option::Option<i32>,
76 #[prost(message, optional, tag = "2")]
77 pub stack_name_template: ::core::option::Option<::prost::alloc::string::String>,
78 }
79 #[derive(serde::Serialize, serde::Deserialize)]
80 #[serde(rename_all = "snake_case")]
81 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
82 pub struct XAxis {
83 #[prost(oneof = "x_axis::Type", tags = "1, 2")]
84 pub r#type: ::core::option::Option<x_axis::Type>,
85 }
86 pub mod x_axis {
88 #[derive(serde::Serialize, serde::Deserialize)]
89 #[serde(rename_all = "snake_case")]
90 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
91 pub struct XAxisByValue {}
92 #[derive(serde::Serialize, serde::Deserialize)]
93 #[serde(rename_all = "snake_case")]
94 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
95 pub struct XAxisByTime {
96 #[prost(message, optional, tag = "1")]
97 pub interval: ::core::option::Option<::prost_wkt_types::Duration>,
98 #[prost(message, optional, tag = "2")]
99 pub buckets_presented: ::core::option::Option<i32>,
100 }
101 #[derive(serde::Serialize, serde::Deserialize)]
102 #[serde(rename_all = "snake_case")]
103 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
104 pub enum Type {
105 #[prost(message, tag = "1")]
106 Value(XAxisByValue),
107 #[prost(message, tag = "2")]
108 Time(XAxisByTime),
109 }
110 }
111 #[derive(serde::Serialize, serde::Deserialize)]
112 #[serde(rename_all = "snake_case")]
113 #[derive(Clone, PartialEq, ::prost::Message)]
114 pub struct LogsQuery {
115 #[prost(message, optional, tag = "1")]
116 pub lucene_query: ::core::option::Option<
117 super::super::super::common::LuceneQuery,
118 >,
119 #[prost(message, optional, tag = "2")]
120 pub aggregation: ::core::option::Option<
121 super::super::super::common::LogsAggregation,
122 >,
123 #[prost(message, repeated, tag = "3")]
124 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::LogsFilter>,
125 #[prost(message, repeated, tag = "4")]
126 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
127 #[prost(message, optional, tag = "5")]
128 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
129 #[prost(message, repeated, tag = "6")]
130 pub group_names_fields: ::prost::alloc::vec::Vec<
131 super::super::super::common::ObservationField,
132 >,
133 #[prost(message, optional, tag = "7")]
134 pub stacked_group_name_field: ::core::option::Option<
135 super::super::super::common::ObservationField,
136 >,
137 #[prost(message, optional, tag = "8")]
138 pub time_frame: ::core::option::Option<
139 super::super::super::common::TimeFrameSelect,
140 >,
141 }
142 #[derive(serde::Serialize, serde::Deserialize)]
143 #[serde(rename_all = "snake_case")]
144 #[derive(Clone, PartialEq, ::prost::Message)]
145 pub struct SpansQuery {
146 #[prost(message, optional, tag = "1")]
147 pub lucene_query: ::core::option::Option<
148 super::super::super::common::LuceneQuery,
149 >,
150 #[prost(message, optional, tag = "2")]
151 pub aggregation: ::core::option::Option<
152 super::super::super::common::SpansAggregation,
153 >,
154 #[prost(message, repeated, tag = "3")]
155 pub filters: ::prost::alloc::vec::Vec<
156 super::super::filters::filter::SpansFilter,
157 >,
158 #[prost(message, repeated, tag = "4")]
159 pub group_names: ::prost::alloc::vec::Vec<
160 super::super::super::common::SpanField,
161 >,
162 #[prost(message, optional, tag = "5")]
163 pub stacked_group_name: ::core::option::Option<
164 super::super::super::common::SpanField,
165 >,
166 #[prost(message, optional, tag = "6")]
167 pub time_frame: ::core::option::Option<
168 super::super::super::common::TimeFrameSelect,
169 >,
170 #[prost(message, repeated, tag = "7")]
171 pub group_names_fields: ::prost::alloc::vec::Vec<
172 super::super::super::common::SpanObservationField,
173 >,
174 #[prost(message, optional, tag = "8")]
175 pub stacked_group_name_field: ::core::option::Option<
176 super::super::super::common::SpanObservationField,
177 >,
178 }
179 #[derive(serde::Serialize, serde::Deserialize)]
180 #[serde(rename_all = "snake_case")]
181 #[derive(Clone, PartialEq, ::prost::Message)]
182 pub struct MetricsQuery {
183 #[prost(message, optional, tag = "1")]
184 pub promql_query: ::core::option::Option<
185 super::super::super::common::PromQlQuery,
186 >,
187 #[prost(message, repeated, tag = "2")]
188 pub filters: ::prost::alloc::vec::Vec<
189 super::super::filters::filter::MetricsFilter,
190 >,
191 #[prost(message, repeated, tag = "3")]
192 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
193 #[prost(message, optional, tag = "4")]
194 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
195 #[prost(enumeration = "super::common::MetricsQueryEditorMode", tag = "5")]
196 pub editor_mode: i32,
197 #[prost(message, optional, tag = "6")]
198 pub time_frame: ::core::option::Option<
199 super::super::super::common::TimeFrameSelect,
200 >,
201 #[prost(enumeration = "super::super::super::common::PromQlQueryType", tag = "7")]
202 pub promql_query_type: i32,
203 #[prost(enumeration = "super::common::Aggregation", tag = "8")]
204 pub aggregation: i32,
205 }
206 #[derive(serde::Serialize, serde::Deserialize)]
207 #[serde(rename_all = "snake_case")]
208 #[derive(Clone, PartialEq, ::prost::Message)]
209 pub struct DataprimeQuery {
210 #[prost(message, optional, tag = "1")]
211 pub dataprime_query: ::core::option::Option<
212 super::super::super::common::DataprimeQuery,
213 >,
214 #[prost(message, repeated, tag = "2")]
215 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::Source>,
216 #[prost(message, repeated, tag = "3")]
217 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
218 #[prost(message, optional, tag = "4")]
219 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
220 #[prost(message, optional, tag = "5")]
221 pub time_frame: ::core::option::Option<
222 super::super::super::common::TimeFrameSelect,
223 >,
224 }
225}
226#[derive(serde::Serialize, serde::Deserialize)]
227#[serde(rename_all = "snake_case")]
228#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
229#[repr(i32)]
230pub enum BarValueDisplay {
231 Unspecified = 0,
232 Top = 1,
233 Inside = 2,
234 Both = 3,
235}
236impl BarValueDisplay {
237 pub fn as_str_name(&self) -> &'static str {
242 match self {
243 Self::Unspecified => "BAR_VALUE_DISPLAY_UNSPECIFIED",
244 Self::Top => "BAR_VALUE_DISPLAY_TOP",
245 Self::Inside => "BAR_VALUE_DISPLAY_INSIDE",
246 Self::Both => "BAR_VALUE_DISPLAY_BOTH",
247 }
248 }
249 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
251 match value {
252 "BAR_VALUE_DISPLAY_UNSPECIFIED" => Some(Self::Unspecified),
253 "BAR_VALUE_DISPLAY_TOP" => Some(Self::Top),
254 "BAR_VALUE_DISPLAY_INSIDE" => Some(Self::Inside),
255 "BAR_VALUE_DISPLAY_BOTH" => Some(Self::Both),
256 _ => None,
257 }
258 }
259}
260#[derive(serde::Serialize, serde::Deserialize)]
261#[serde(rename_all = "snake_case")]
262#[derive(Clone, PartialEq, ::prost::Message)]
263pub struct DataTable {
264 #[prost(message, optional, tag = "1")]
265 pub query: ::core::option::Option<data_table::Query>,
266 #[prost(message, optional, tag = "2")]
267 pub results_per_page: ::core::option::Option<i32>,
268 #[prost(enumeration = "RowStyle", tag = "3")]
269 pub row_style: i32,
270 #[prost(message, repeated, tag = "4")]
271 pub columns: ::prost::alloc::vec::Vec<data_table::Column>,
272 #[prost(message, optional, tag = "5")]
273 pub order_by: ::core::option::Option<super::super::common::OrderingField>,
274 #[prost(enumeration = "common::DataModeType", tag = "11")]
275 pub data_mode_type: i32,
276}
277pub mod data_table {
279 #[derive(serde::Serialize, serde::Deserialize)]
280 #[serde(rename_all = "snake_case")]
281 #[derive(Clone, PartialEq, ::prost::Message)]
282 pub struct Query {
283 #[prost(oneof = "query::Value", tags = "1, 2, 3, 4")]
284 pub value: ::core::option::Option<query::Value>,
285 }
286 pub mod query {
288 #[derive(serde::Serialize, serde::Deserialize)]
289 #[serde(rename_all = "snake_case")]
290 #[derive(Clone, PartialEq, ::prost::Oneof)]
291 pub enum Value {
292 #[prost(message, tag = "1")]
293 Logs(super::LogsQuery),
294 #[prost(message, tag = "2")]
295 Spans(super::SpansQuery),
296 #[prost(message, tag = "3")]
297 Metrics(super::MetricsQuery),
298 #[prost(message, tag = "4")]
299 Dataprime(super::DataprimeQuery),
300 }
301 }
302 #[derive(serde::Serialize, serde::Deserialize)]
303 #[serde(rename_all = "snake_case")]
304 #[derive(Clone, PartialEq, ::prost::Message)]
305 pub struct LogsQuery {
306 #[prost(message, optional, tag = "1")]
307 pub lucene_query: ::core::option::Option<
308 super::super::super::common::LuceneQuery,
309 >,
310 #[prost(message, repeated, tag = "2")]
311 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::LogsFilter>,
312 #[prost(message, optional, tag = "3")]
313 pub grouping: ::core::option::Option<logs_query::Grouping>,
314 #[prost(message, optional, tag = "4")]
315 pub time_frame: ::core::option::Option<
316 super::super::super::common::TimeFrameSelect,
317 >,
318 }
319 pub mod logs_query {
321 #[derive(serde::Serialize, serde::Deserialize)]
322 #[serde(rename_all = "snake_case")]
323 #[derive(Clone, PartialEq, ::prost::Message)]
324 pub struct Grouping {
325 #[prost(message, repeated, tag = "1")]
326 pub group_by: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
327 #[prost(message, repeated, tag = "2")]
328 pub aggregations: ::prost::alloc::vec::Vec<Aggregation>,
329 #[prost(message, repeated, tag = "3")]
330 pub group_bys: ::prost::alloc::vec::Vec<
331 super::super::super::super::common::ObservationField,
332 >,
333 }
334 #[derive(serde::Serialize, serde::Deserialize)]
335 #[serde(rename_all = "snake_case")]
336 #[derive(Clone, PartialEq, ::prost::Message)]
337 pub struct Aggregation {
338 #[prost(message, optional, tag = "1")]
339 pub id: ::core::option::Option<::prost::alloc::string::String>,
340 #[prost(message, optional, tag = "2")]
341 pub name: ::core::option::Option<::prost::alloc::string::String>,
342 #[prost(message, optional, tag = "3")]
343 pub is_visible: ::core::option::Option<bool>,
344 #[prost(message, optional, tag = "4")]
345 pub aggregation: ::core::option::Option<
346 super::super::super::super::common::LogsAggregation,
347 >,
348 }
349 }
350 #[derive(serde::Serialize, serde::Deserialize)]
351 #[serde(rename_all = "snake_case")]
352 #[derive(Clone, PartialEq, ::prost::Message)]
353 pub struct SpansQuery {
354 #[prost(message, optional, tag = "1")]
355 pub lucene_query: ::core::option::Option<
356 super::super::super::common::LuceneQuery,
357 >,
358 #[prost(message, repeated, tag = "2")]
359 pub filters: ::prost::alloc::vec::Vec<
360 super::super::filters::filter::SpansFilter,
361 >,
362 #[prost(message, optional, tag = "3")]
363 pub grouping: ::core::option::Option<spans_query::Grouping>,
364 #[prost(message, optional, tag = "4")]
365 pub time_frame: ::core::option::Option<
366 super::super::super::common::TimeFrameSelect,
367 >,
368 }
369 pub mod spans_query {
371 #[derive(serde::Serialize, serde::Deserialize)]
372 #[serde(rename_all = "snake_case")]
373 #[derive(Clone, PartialEq, ::prost::Message)]
374 pub struct Grouping {
375 #[prost(message, repeated, tag = "1")]
376 pub group_by: ::prost::alloc::vec::Vec<
377 super::super::super::super::common::SpanField,
378 >,
379 #[prost(message, repeated, tag = "2")]
380 pub aggregations: ::prost::alloc::vec::Vec<Aggregation>,
381 #[prost(message, repeated, tag = "3")]
382 pub group_bys: ::prost::alloc::vec::Vec<
383 super::super::super::super::common::SpanObservationField,
384 >,
385 }
386 #[derive(serde::Serialize, serde::Deserialize)]
387 #[serde(rename_all = "snake_case")]
388 #[derive(Clone, PartialEq, ::prost::Message)]
389 pub struct Aggregation {
390 #[prost(message, optional, tag = "1")]
391 pub id: ::core::option::Option<::prost::alloc::string::String>,
392 #[prost(message, optional, tag = "2")]
393 pub name: ::core::option::Option<::prost::alloc::string::String>,
394 #[prost(message, optional, tag = "3")]
395 pub is_visible: ::core::option::Option<bool>,
396 #[prost(message, optional, tag = "4")]
397 pub aggregation: ::core::option::Option<
398 super::super::super::super::common::SpansAggregation,
399 >,
400 }
401 }
402 #[derive(serde::Serialize, serde::Deserialize)]
403 #[serde(rename_all = "snake_case")]
404 #[derive(Clone, PartialEq, ::prost::Message)]
405 pub struct MetricsQuery {
406 #[prost(message, optional, tag = "1")]
407 pub promql_query: ::core::option::Option<
408 super::super::super::common::PromQlQuery,
409 >,
410 #[prost(message, repeated, tag = "2")]
411 pub filters: ::prost::alloc::vec::Vec<
412 super::super::filters::filter::MetricsFilter,
413 >,
414 #[prost(enumeration = "super::common::MetricsQueryEditorMode", tag = "3")]
415 pub editor_mode: i32,
416 #[prost(message, optional, tag = "4")]
417 pub time_frame: ::core::option::Option<
418 super::super::super::common::TimeFrameSelect,
419 >,
420 #[prost(enumeration = "super::super::super::common::PromQlQueryType", tag = "5")]
421 pub promql_query_type: i32,
422 }
423 #[derive(serde::Serialize, serde::Deserialize)]
424 #[serde(rename_all = "snake_case")]
425 #[derive(Clone, PartialEq, ::prost::Message)]
426 pub struct DataprimeQuery {
427 #[prost(message, optional, tag = "1")]
428 pub dataprime_query: ::core::option::Option<
429 super::super::super::common::DataprimeQuery,
430 >,
431 #[prost(message, repeated, tag = "2")]
432 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::Source>,
433 #[prost(message, optional, tag = "3")]
434 pub time_frame: ::core::option::Option<
435 super::super::super::common::TimeFrameSelect,
436 >,
437 }
438 #[derive(serde::Serialize, serde::Deserialize)]
439 #[serde(rename_all = "snake_case")]
440 #[derive(Clone, PartialEq, ::prost::Message)]
441 pub struct Column {
442 #[prost(message, optional, tag = "1")]
443 pub field: ::core::option::Option<::prost::alloc::string::String>,
444 #[prost(message, optional, tag = "2")]
445 pub width: ::core::option::Option<i32>,
446 }
447}
448#[derive(serde::Serialize, serde::Deserialize)]
449#[serde(rename_all = "snake_case")]
450#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
451#[repr(i32)]
452pub enum RowStyle {
453 Unspecified = 0,
454 OneLine = 1,
455 TwoLine = 2,
456 Condensed = 3,
457 Json = 4,
458 List = 5,
459}
460impl RowStyle {
461 pub fn as_str_name(&self) -> &'static str {
466 match self {
467 Self::Unspecified => "ROW_STYLE_UNSPECIFIED",
468 Self::OneLine => "ROW_STYLE_ONE_LINE",
469 Self::TwoLine => "ROW_STYLE_TWO_LINE",
470 Self::Condensed => "ROW_STYLE_CONDENSED",
471 Self::Json => "ROW_STYLE_JSON",
472 Self::List => "ROW_STYLE_LIST",
473 }
474 }
475 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
477 match value {
478 "ROW_STYLE_UNSPECIFIED" => Some(Self::Unspecified),
479 "ROW_STYLE_ONE_LINE" => Some(Self::OneLine),
480 "ROW_STYLE_TWO_LINE" => Some(Self::TwoLine),
481 "ROW_STYLE_CONDENSED" => Some(Self::Condensed),
482 "ROW_STYLE_JSON" => Some(Self::Json),
483 "ROW_STYLE_LIST" => Some(Self::List),
484 _ => None,
485 }
486 }
487}
488#[derive(serde::Serialize, serde::Deserialize)]
489#[serde(rename_all = "snake_case")]
490#[derive(Clone, PartialEq, ::prost::Message)]
491pub struct Dynamic {
492 #[prost(message, optional, tag = "1")]
493 pub query: ::core::option::Option<dynamic::Query>,
494 #[prost(message, optional, tag = "2")]
495 pub time_frame: ::core::option::Option<super::super::common::TimeFrameSelect>,
496 #[prost(enumeration = "dynamic::Interpretation", tag = "3")]
497 pub interpretation: i32,
498}
499pub mod dynamic {
501 #[derive(serde::Serialize, serde::Deserialize)]
502 #[serde(rename_all = "snake_case")]
503 #[derive(Clone, PartialEq, ::prost::Message)]
504 pub struct Query {
505 #[prost(oneof = "query::Value", tags = "1, 2, 3, 4")]
506 pub value: ::core::option::Option<query::Value>,
507 }
508 pub mod query {
510 #[derive(serde::Serialize, serde::Deserialize)]
511 #[serde(rename_all = "snake_case")]
512 #[derive(Clone, PartialEq, ::prost::Message)]
513 pub struct Logs {
514 #[prost(message, optional, tag = "1")]
515 pub lucene_query: ::core::option::Option<
516 super::super::super::super::common::LuceneQuery,
517 >,
518 #[prost(enumeration = "super::super::common::DataModeType", tag = "2")]
519 pub data_mode_type: i32,
520 #[prost(message, repeated, tag = "3")]
521 pub filters: ::prost::alloc::vec::Vec<
522 super::super::super::filters::filter::LogsFilter,
523 >,
524 #[prost(message, repeated, tag = "4")]
525 pub group_by: ::prost::alloc::vec::Vec<
526 super::super::super::super::common::ObservationField,
527 >,
528 #[prost(message, repeated, tag = "5")]
529 pub aggregation: ::prost::alloc::vec::Vec<
530 super::super::super::super::common::LogsAggregation,
531 >,
532 }
533 #[derive(serde::Serialize, serde::Deserialize)]
534 #[serde(rename_all = "snake_case")]
535 #[derive(Clone, PartialEq, ::prost::Message)]
536 pub struct Spans {
537 #[prost(message, optional, tag = "1")]
538 pub lucene_query: ::core::option::Option<
539 super::super::super::super::common::LuceneQuery,
540 >,
541 #[prost(enumeration = "super::super::common::DataModeType", tag = "2")]
542 pub data_mode_type: i32,
543 #[prost(message, repeated, tag = "3")]
544 pub filters: ::prost::alloc::vec::Vec<
545 super::super::super::filters::filter::SpansFilter,
546 >,
547 #[prost(message, repeated, tag = "4")]
548 pub group_by: ::prost::alloc::vec::Vec<
549 super::super::super::super::common::SpanObservationField,
550 >,
551 #[prost(message, repeated, tag = "5")]
552 pub aggregation: ::prost::alloc::vec::Vec<
553 super::super::super::super::common::SpansAggregation,
554 >,
555 }
556 #[derive(serde::Serialize, serde::Deserialize)]
557 #[serde(rename_all = "snake_case")]
558 #[derive(Clone, PartialEq, ::prost::Message)]
559 pub struct Metrics {
560 #[prost(message, optional, tag = "1")]
561 pub promql_query: ::core::option::Option<
562 super::super::super::super::common::PromQlQuery,
563 >,
564 #[prost(
565 enumeration = "super::super::super::super::common::PromQlQueryType",
566 tag = "2"
567 )]
568 pub promql_query_type: i32,
569 #[prost(
570 enumeration = "super::super::common::MetricsQueryEditorMode",
571 tag = "3"
572 )]
573 pub editor_mode: i32,
574 }
575 #[derive(serde::Serialize, serde::Deserialize)]
576 #[serde(rename_all = "snake_case")]
577 #[derive(Clone, PartialEq, ::prost::Message)]
578 pub struct Dataprime {
579 #[prost(message, optional, tag = "1")]
580 pub dataprime_query: ::core::option::Option<
581 super::super::super::super::common::DataprimeQuery,
582 >,
583 #[prost(enumeration = "super::super::common::DataModeType", tag = "2")]
584 pub data_mode_type: i32,
585 }
586 #[derive(serde::Serialize, serde::Deserialize)]
587 #[serde(rename_all = "snake_case")]
588 #[derive(Clone, PartialEq, ::prost::Oneof)]
589 pub enum Value {
590 #[prost(message, tag = "1")]
591 Logs(Logs),
592 #[prost(message, tag = "2")]
593 Spans(Spans),
594 #[prost(message, tag = "3")]
595 Metrics(Metrics),
596 #[prost(message, tag = "4")]
597 Dataprime(Dataprime),
598 }
599 }
600 #[derive(serde::Serialize, serde::Deserialize)]
601 #[serde(rename_all = "snake_case")]
602 #[derive(
603 Clone,
604 Copy,
605 Debug,
606 PartialEq,
607 Eq,
608 Hash,
609 PartialOrd,
610 Ord,
611 ::prost::Enumeration
612 )]
613 #[repr(i32)]
614 pub enum Interpretation {
615 Unspecified = 0,
616 RawDataTable = 1,
617 TrendOverTimeLine = 2,
618 SingleValueKpi = 3,
619 MultiValueKpi = 4,
620 CategoricalAnalysisVerticalBars = 5,
621 }
622 impl Interpretation {
623 pub fn as_str_name(&self) -> &'static str {
628 match self {
629 Self::Unspecified => "INTERPRETATION_UNSPECIFIED",
630 Self::RawDataTable => "INTERPRETATION_RAW_DATA_TABLE",
631 Self::TrendOverTimeLine => "INTERPRETATION_TREND_OVER_TIME_LINE",
632 Self::SingleValueKpi => "INTERPRETATION_SINGLE_VALUE_KPI",
633 Self::MultiValueKpi => "INTERPRETATION_MULTI_VALUE_KPI",
634 Self::CategoricalAnalysisVerticalBars => {
635 "INTERPRETATION_CATEGORICAL_ANALYSIS_VERTICAL_BARS"
636 }
637 }
638 }
639 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
641 match value {
642 "INTERPRETATION_UNSPECIFIED" => Some(Self::Unspecified),
643 "INTERPRETATION_RAW_DATA_TABLE" => Some(Self::RawDataTable),
644 "INTERPRETATION_TREND_OVER_TIME_LINE" => Some(Self::TrendOverTimeLine),
645 "INTERPRETATION_SINGLE_VALUE_KPI" => Some(Self::SingleValueKpi),
646 "INTERPRETATION_MULTI_VALUE_KPI" => Some(Self::MultiValueKpi),
647 "INTERPRETATION_CATEGORICAL_ANALYSIS_VERTICAL_BARS" => {
648 Some(Self::CategoricalAnalysisVerticalBars)
649 }
650 _ => None,
651 }
652 }
653 }
654}
655#[derive(serde::Serialize, serde::Deserialize)]
656#[serde(rename_all = "snake_case")]
657#[derive(Clone, PartialEq, ::prost::Message)]
658pub struct Gauge {
659 #[prost(message, optional, tag = "1")]
660 pub query: ::core::option::Option<gauge::Query>,
661 #[prost(message, optional, tag = "2")]
662 pub min: ::core::option::Option<f64>,
663 #[prost(message, optional, tag = "3")]
664 pub max: ::core::option::Option<f64>,
665 #[prost(message, optional, tag = "4")]
666 pub show_inner_arc: ::core::option::Option<bool>,
667 #[prost(message, optional, tag = "5")]
668 pub show_outer_arc: ::core::option::Option<bool>,
669 #[prost(enumeration = "gauge::Unit", tag = "6")]
670 pub unit: i32,
671 #[prost(message, repeated, tag = "7")]
672 pub thresholds: ::prost::alloc::vec::Vec<gauge::Threshold>,
673 #[prost(enumeration = "common::DataModeType", tag = "8")]
674 pub data_mode_type: i32,
675 #[prost(enumeration = "gauge::ThresholdBy", tag = "9")]
676 pub threshold_by: i32,
677 #[prost(message, optional, tag = "10")]
678 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
679 #[prost(message, optional, tag = "11")]
680 pub decimal: ::core::option::Option<i32>,
681 #[prost(enumeration = "common::ThresholdType", tag = "12")]
682 pub threshold_type: i32,
683 #[prost(message, optional, tag = "13")]
684 pub legend: ::core::option::Option<common::Legend>,
685 #[prost(enumeration = "common::LegendBy", tag = "14")]
686 pub legend_by: i32,
687 #[prost(message, optional, tag = "15")]
688 pub display_series_name: ::core::option::Option<bool>,
689 #[prost(message, optional, tag = "16")]
690 pub decimal_precision: ::core::option::Option<bool>,
691}
692pub mod gauge {
694 #[derive(serde::Serialize, serde::Deserialize)]
695 #[serde(rename_all = "snake_case")]
696 #[derive(Clone, PartialEq, ::prost::Message)]
697 pub struct Query {
698 #[prost(oneof = "query::Value", tags = "1, 2, 3, 4")]
699 pub value: ::core::option::Option<query::Value>,
700 }
701 pub mod query {
703 #[derive(serde::Serialize, serde::Deserialize)]
704 #[serde(rename_all = "snake_case")]
705 #[derive(Clone, PartialEq, ::prost::Oneof)]
706 pub enum Value {
707 #[prost(message, tag = "1")]
708 Metrics(super::MetricsQuery),
709 #[prost(message, tag = "2")]
710 Logs(super::LogsQuery),
711 #[prost(message, tag = "3")]
712 Spans(super::SpansQuery),
713 #[prost(message, tag = "4")]
714 Dataprime(super::DataprimeQuery),
715 }
716 }
717 #[derive(serde::Serialize, serde::Deserialize)]
718 #[serde(rename_all = "snake_case")]
719 #[derive(Clone, PartialEq, ::prost::Message)]
720 pub struct MetricsQuery {
721 #[prost(message, optional, tag = "1")]
722 pub promql_query: ::core::option::Option<
723 super::super::super::common::PromQlQuery,
724 >,
725 #[prost(enumeration = "Aggregation", tag = "2")]
726 pub aggregation: i32,
727 #[prost(message, repeated, tag = "3")]
728 pub filters: ::prost::alloc::vec::Vec<
729 super::super::filters::filter::MetricsFilter,
730 >,
731 #[prost(enumeration = "super::common::MetricsQueryEditorMode", tag = "4")]
732 pub editor_mode: i32,
733 #[prost(message, optional, tag = "5")]
734 pub time_frame: ::core::option::Option<
735 super::super::super::common::TimeFrameSelect,
736 >,
737 #[prost(enumeration = "super::super::super::common::PromQlQueryType", tag = "6")]
738 pub promql_query_type: i32,
739 }
740 #[derive(serde::Serialize, serde::Deserialize)]
741 #[serde(rename_all = "snake_case")]
742 #[derive(Clone, PartialEq, ::prost::Message)]
743 pub struct LogsQuery {
744 #[prost(message, optional, tag = "1")]
745 pub lucene_query: ::core::option::Option<
746 super::super::super::common::LuceneQuery,
747 >,
748 #[prost(message, optional, tag = "2")]
749 pub logs_aggregation: ::core::option::Option<
750 super::super::super::common::LogsAggregation,
751 >,
752 #[deprecated]
753 #[prost(enumeration = "Aggregation", tag = "3")]
754 pub aggregation: i32,
755 #[prost(message, repeated, tag = "4")]
756 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::LogsFilter>,
757 #[prost(message, repeated, tag = "5")]
758 pub group_by: ::prost::alloc::vec::Vec<
759 super::super::super::common::ObservationField,
760 >,
761 #[prost(message, optional, tag = "6")]
762 pub time_frame: ::core::option::Option<
763 super::super::super::common::TimeFrameSelect,
764 >,
765 }
766 #[derive(serde::Serialize, serde::Deserialize)]
767 #[serde(rename_all = "snake_case")]
768 #[derive(Clone, PartialEq, ::prost::Message)]
769 pub struct SpansQuery {
770 #[prost(message, optional, tag = "1")]
771 pub lucene_query: ::core::option::Option<
772 super::super::super::common::LuceneQuery,
773 >,
774 #[prost(message, optional, tag = "2")]
775 pub spans_aggregation: ::core::option::Option<
776 super::super::super::common::SpansAggregation,
777 >,
778 #[deprecated]
779 #[prost(enumeration = "Aggregation", tag = "3")]
780 pub aggregation: i32,
781 #[prost(message, repeated, tag = "4")]
782 pub filters: ::prost::alloc::vec::Vec<
783 super::super::filters::filter::SpansFilter,
784 >,
785 #[prost(message, repeated, tag = "5")]
786 pub group_by: ::prost::alloc::vec::Vec<super::super::super::common::SpanField>,
787 #[prost(message, optional, tag = "6")]
788 pub time_frame: ::core::option::Option<
789 super::super::super::common::TimeFrameSelect,
790 >,
791 #[prost(message, repeated, tag = "7")]
792 pub group_bys: ::prost::alloc::vec::Vec<
793 super::super::super::common::SpanObservationField,
794 >,
795 }
796 #[derive(serde::Serialize, serde::Deserialize)]
797 #[serde(rename_all = "snake_case")]
798 #[derive(Clone, PartialEq, ::prost::Message)]
799 pub struct DataprimeQuery {
800 #[prost(message, optional, tag = "1")]
801 pub dataprime_query: ::core::option::Option<
802 super::super::super::common::DataprimeQuery,
803 >,
804 #[prost(message, repeated, tag = "2")]
805 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::Source>,
806 #[prost(message, optional, tag = "3")]
807 pub time_frame: ::core::option::Option<
808 super::super::super::common::TimeFrameSelect,
809 >,
810 }
811 #[derive(serde::Serialize, serde::Deserialize)]
812 #[serde(rename_all = "snake_case")]
813 #[derive(Clone, PartialEq, ::prost::Message)]
814 pub struct Threshold {
815 #[prost(message, optional, tag = "1")]
816 pub from: ::core::option::Option<f64>,
817 #[prost(message, optional, tag = "2")]
818 pub color: ::core::option::Option<::prost::alloc::string::String>,
819 #[prost(message, optional, tag = "3")]
820 pub label: ::core::option::Option<::prost::alloc::string::String>,
821 }
822 #[derive(serde::Serialize, serde::Deserialize)]
823 #[serde(rename_all = "snake_case")]
824 #[derive(
825 Clone,
826 Copy,
827 Debug,
828 PartialEq,
829 Eq,
830 Hash,
831 PartialOrd,
832 Ord,
833 ::prost::Enumeration
834 )]
835 #[repr(i32)]
836 pub enum Aggregation {
837 Unspecified = 0,
838 Last = 1,
839 Min = 2,
840 Max = 3,
841 Avg = 4,
842 Sum = 5,
843 }
844 impl Aggregation {
845 pub fn as_str_name(&self) -> &'static str {
850 match self {
851 Self::Unspecified => "AGGREGATION_UNSPECIFIED",
852 Self::Last => "AGGREGATION_LAST",
853 Self::Min => "AGGREGATION_MIN",
854 Self::Max => "AGGREGATION_MAX",
855 Self::Avg => "AGGREGATION_AVG",
856 Self::Sum => "AGGREGATION_SUM",
857 }
858 }
859 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
861 match value {
862 "AGGREGATION_UNSPECIFIED" => Some(Self::Unspecified),
863 "AGGREGATION_LAST" => Some(Self::Last),
864 "AGGREGATION_MIN" => Some(Self::Min),
865 "AGGREGATION_MAX" => Some(Self::Max),
866 "AGGREGATION_AVG" => Some(Self::Avg),
867 "AGGREGATION_SUM" => Some(Self::Sum),
868 _ => None,
869 }
870 }
871 }
872 #[derive(serde::Serialize, serde::Deserialize)]
873 #[serde(rename_all = "snake_case")]
874 #[derive(
875 Clone,
876 Copy,
877 Debug,
878 PartialEq,
879 Eq,
880 Hash,
881 PartialOrd,
882 Ord,
883 ::prost::Enumeration
884 )]
885 #[repr(i32)]
886 pub enum Unit {
887 Unspecified = 0,
888 Number = 1,
889 Percent = 2,
890 Microseconds = 3,
891 Milliseconds = 4,
892 Seconds = 5,
893 Bytes = 6,
894 Kbytes = 7,
895 Mbytes = 8,
896 Gbytes = 9,
897 BytesIec = 10,
898 Kibytes = 11,
899 Mibytes = 12,
900 Gibytes = 13,
901 EurCents = 14,
902 Eur = 15,
903 UsdCents = 16,
904 Usd = 17,
905 Custom = 18,
906 PercentZeroOne = 19,
907 PercentZeroHundred = 20,
908 Nanoseconds = 21,
909 }
910 impl Unit {
911 pub fn as_str_name(&self) -> &'static str {
916 match self {
917 Self::Unspecified => "UNIT_UNSPECIFIED",
918 Self::Number => "UNIT_NUMBER",
919 Self::Percent => "UNIT_PERCENT",
920 Self::Microseconds => "UNIT_MICROSECONDS",
921 Self::Milliseconds => "UNIT_MILLISECONDS",
922 Self::Seconds => "UNIT_SECONDS",
923 Self::Bytes => "UNIT_BYTES",
924 Self::Kbytes => "UNIT_KBYTES",
925 Self::Mbytes => "UNIT_MBYTES",
926 Self::Gbytes => "UNIT_GBYTES",
927 Self::BytesIec => "UNIT_BYTES_IEC",
928 Self::Kibytes => "UNIT_KIBYTES",
929 Self::Mibytes => "UNIT_MIBYTES",
930 Self::Gibytes => "UNIT_GIBYTES",
931 Self::EurCents => "UNIT_EUR_CENTS",
932 Self::Eur => "UNIT_EUR",
933 Self::UsdCents => "UNIT_USD_CENTS",
934 Self::Usd => "UNIT_USD",
935 Self::Custom => "UNIT_CUSTOM",
936 Self::PercentZeroOne => "UNIT_PERCENT_ZERO_ONE",
937 Self::PercentZeroHundred => "UNIT_PERCENT_ZERO_HUNDRED",
938 Self::Nanoseconds => "UNIT_NANOSECONDS",
939 }
940 }
941 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
943 match value {
944 "UNIT_UNSPECIFIED" => Some(Self::Unspecified),
945 "UNIT_NUMBER" => Some(Self::Number),
946 "UNIT_PERCENT" => Some(Self::Percent),
947 "UNIT_MICROSECONDS" => Some(Self::Microseconds),
948 "UNIT_MILLISECONDS" => Some(Self::Milliseconds),
949 "UNIT_SECONDS" => Some(Self::Seconds),
950 "UNIT_BYTES" => Some(Self::Bytes),
951 "UNIT_KBYTES" => Some(Self::Kbytes),
952 "UNIT_MBYTES" => Some(Self::Mbytes),
953 "UNIT_GBYTES" => Some(Self::Gbytes),
954 "UNIT_BYTES_IEC" => Some(Self::BytesIec),
955 "UNIT_KIBYTES" => Some(Self::Kibytes),
956 "UNIT_MIBYTES" => Some(Self::Mibytes),
957 "UNIT_GIBYTES" => Some(Self::Gibytes),
958 "UNIT_EUR_CENTS" => Some(Self::EurCents),
959 "UNIT_EUR" => Some(Self::Eur),
960 "UNIT_USD_CENTS" => Some(Self::UsdCents),
961 "UNIT_USD" => Some(Self::Usd),
962 "UNIT_CUSTOM" => Some(Self::Custom),
963 "UNIT_PERCENT_ZERO_ONE" => Some(Self::PercentZeroOne),
964 "UNIT_PERCENT_ZERO_HUNDRED" => Some(Self::PercentZeroHundred),
965 "UNIT_NANOSECONDS" => Some(Self::Nanoseconds),
966 _ => None,
967 }
968 }
969 }
970 #[derive(serde::Serialize, serde::Deserialize)]
971 #[serde(rename_all = "snake_case")]
972 #[derive(
973 Clone,
974 Copy,
975 Debug,
976 PartialEq,
977 Eq,
978 Hash,
979 PartialOrd,
980 Ord,
981 ::prost::Enumeration
982 )]
983 #[repr(i32)]
984 pub enum ThresholdBy {
985 Unspecified = 0,
986 Value = 1,
987 Background = 2,
988 }
989 impl ThresholdBy {
990 pub fn as_str_name(&self) -> &'static str {
995 match self {
996 Self::Unspecified => "THRESHOLD_BY_UNSPECIFIED",
997 Self::Value => "THRESHOLD_BY_VALUE",
998 Self::Background => "THRESHOLD_BY_BACKGROUND",
999 }
1000 }
1001 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1003 match value {
1004 "THRESHOLD_BY_UNSPECIFIED" => Some(Self::Unspecified),
1005 "THRESHOLD_BY_VALUE" => Some(Self::Value),
1006 "THRESHOLD_BY_BACKGROUND" => Some(Self::Background),
1007 _ => None,
1008 }
1009 }
1010 }
1011}
1012#[derive(serde::Serialize, serde::Deserialize)]
1013#[serde(rename_all = "snake_case")]
1014#[derive(Clone, PartialEq, ::prost::Message)]
1015pub struct Hexagon {
1016 #[prost(message, optional, tag = "1")]
1017 pub query: ::core::option::Option<hexagon::Query>,
1018 #[prost(message, optional, tag = "2")]
1019 pub min: ::core::option::Option<f64>,
1020 #[prost(message, optional, tag = "3")]
1021 pub max: ::core::option::Option<f64>,
1022 #[prost(enumeration = "common::Unit", tag = "6")]
1023 pub unit: i32,
1024 #[prost(message, repeated, tag = "7")]
1025 pub thresholds: ::prost::alloc::vec::Vec<common::Threshold>,
1026 #[prost(enumeration = "common::DataModeType", tag = "8")]
1027 pub data_mode_type: i32,
1028 #[prost(message, optional, tag = "10")]
1029 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
1030 #[prost(message, optional, tag = "11")]
1031 pub decimal: ::core::option::Option<i32>,
1032 #[prost(enumeration = "common::ThresholdType", tag = "12")]
1033 pub threshold_type: i32,
1034 #[prost(message, optional, tag = "13")]
1035 pub legend: ::core::option::Option<common::Legend>,
1036 #[prost(enumeration = "common::LegendBy", tag = "14")]
1037 pub legend_by: i32,
1038 #[prost(message, optional, tag = "15")]
1039 pub decimal_precision: ::core::option::Option<bool>,
1040}
1041pub mod hexagon {
1043 #[derive(serde::Serialize, serde::Deserialize)]
1044 #[serde(rename_all = "snake_case")]
1045 #[derive(Clone, PartialEq, ::prost::Message)]
1046 pub struct Query {
1047 #[prost(oneof = "query::Value", tags = "1, 2, 3, 4")]
1048 pub value: ::core::option::Option<query::Value>,
1049 }
1050 pub mod query {
1052 #[derive(serde::Serialize, serde::Deserialize)]
1053 #[serde(rename_all = "snake_case")]
1054 #[derive(Clone, PartialEq, ::prost::Oneof)]
1055 pub enum Value {
1056 #[prost(message, tag = "1")]
1057 Metrics(super::MetricsQuery),
1058 #[prost(message, tag = "2")]
1059 Logs(super::LogsQuery),
1060 #[prost(message, tag = "3")]
1061 Spans(super::SpansQuery),
1062 #[prost(message, tag = "4")]
1063 Dataprime(super::DataprimeQuery),
1064 }
1065 }
1066 #[derive(serde::Serialize, serde::Deserialize)]
1067 #[serde(rename_all = "snake_case")]
1068 #[derive(Clone, PartialEq, ::prost::Message)]
1069 pub struct MetricsQuery {
1070 #[prost(message, optional, tag = "1")]
1071 pub promql_query: ::core::option::Option<
1072 super::super::super::common::PromQlQuery,
1073 >,
1074 #[prost(message, repeated, tag = "2")]
1075 pub filters: ::prost::alloc::vec::Vec<
1076 super::super::filters::filter::MetricsFilter,
1077 >,
1078 #[prost(enumeration = "super::common::MetricsQueryEditorMode", tag = "3")]
1079 pub editor_mode: i32,
1080 #[prost(message, optional, tag = "4")]
1081 pub time_frame: ::core::option::Option<
1082 super::super::super::common::TimeFrameSelect,
1083 >,
1084 #[prost(enumeration = "super::common::Aggregation", tag = "5")]
1085 pub aggregation: i32,
1086 #[prost(enumeration = "super::super::super::common::PromQlQueryType", tag = "6")]
1087 pub promql_query_type: i32,
1088 }
1089 #[derive(serde::Serialize, serde::Deserialize)]
1090 #[serde(rename_all = "snake_case")]
1091 #[derive(Clone, PartialEq, ::prost::Message)]
1092 pub struct LogsQuery {
1093 #[prost(message, optional, tag = "1")]
1094 pub lucene_query: ::core::option::Option<
1095 super::super::super::common::LuceneQuery,
1096 >,
1097 #[prost(message, optional, tag = "2")]
1098 pub logs_aggregation: ::core::option::Option<
1099 super::super::super::common::LogsAggregation,
1100 >,
1101 #[prost(message, repeated, tag = "3")]
1102 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::LogsFilter>,
1103 #[prost(message, repeated, tag = "4")]
1104 pub group_by: ::prost::alloc::vec::Vec<
1105 super::super::super::common::ObservationField,
1106 >,
1107 #[prost(message, optional, tag = "5")]
1108 pub time_frame: ::core::option::Option<
1109 super::super::super::common::TimeFrameSelect,
1110 >,
1111 }
1112 #[derive(serde::Serialize, serde::Deserialize)]
1113 #[serde(rename_all = "snake_case")]
1114 #[derive(Clone, PartialEq, ::prost::Message)]
1115 pub struct SpansQuery {
1116 #[prost(message, optional, tag = "1")]
1117 pub lucene_query: ::core::option::Option<
1118 super::super::super::common::LuceneQuery,
1119 >,
1120 #[prost(message, optional, tag = "2")]
1121 pub spans_aggregation: ::core::option::Option<
1122 super::super::super::common::SpansAggregation,
1123 >,
1124 #[prost(message, repeated, tag = "3")]
1125 pub filters: ::prost::alloc::vec::Vec<
1126 super::super::filters::filter::SpansFilter,
1127 >,
1128 #[prost(message, repeated, tag = "4")]
1129 pub group_by: ::prost::alloc::vec::Vec<super::super::super::common::SpanField>,
1130 #[prost(message, optional, tag = "5")]
1131 pub time_frame: ::core::option::Option<
1132 super::super::super::common::TimeFrameSelect,
1133 >,
1134 #[prost(message, repeated, tag = "6")]
1135 pub group_bys: ::prost::alloc::vec::Vec<
1136 super::super::super::common::SpanObservationField,
1137 >,
1138 }
1139 #[derive(serde::Serialize, serde::Deserialize)]
1140 #[serde(rename_all = "snake_case")]
1141 #[derive(Clone, PartialEq, ::prost::Message)]
1142 pub struct DataprimeQuery {
1143 #[prost(message, optional, tag = "1")]
1144 pub dataprime_query: ::core::option::Option<
1145 super::super::super::common::DataprimeQuery,
1146 >,
1147 #[prost(message, repeated, tag = "2")]
1148 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::Source>,
1149 #[prost(message, optional, tag = "3")]
1150 pub time_frame: ::core::option::Option<
1151 super::super::super::common::TimeFrameSelect,
1152 >,
1153 }
1154}
1155#[derive(serde::Serialize, serde::Deserialize)]
1156#[serde(rename_all = "snake_case")]
1157#[derive(Clone, PartialEq, ::prost::Message)]
1158pub struct HorizontalBarChart {
1159 #[prost(message, optional, tag = "1")]
1160 pub query: ::core::option::Option<horizontal_bar_chart::Query>,
1161 #[prost(message, optional, tag = "2")]
1162 pub max_bars_per_chart: ::core::option::Option<i32>,
1163 #[prost(message, optional, tag = "3")]
1164 pub group_name_template: ::core::option::Option<::prost::alloc::string::String>,
1165 #[prost(message, optional, tag = "4")]
1166 pub stack_definition: ::core::option::Option<horizontal_bar_chart::StackDefinition>,
1167 #[prost(enumeration = "common::ScaleType", tag = "5")]
1168 pub scale_type: i32,
1169 #[prost(message, optional, tag = "6")]
1170 pub colors_by: ::core::option::Option<common::ColorsBy>,
1171 #[prost(enumeration = "common::Unit", tag = "8")]
1172 pub unit: i32,
1173 #[prost(message, optional, tag = "9")]
1174 pub display_on_bar: ::core::option::Option<bool>,
1175 #[prost(message, optional, tag = "10")]
1176 pub y_axis_view_by: ::core::option::Option<horizontal_bar_chart::YAxisViewBy>,
1177 #[prost(enumeration = "common::SortByType", tag = "11")]
1178 pub sort_by: i32,
1179 #[prost(message, optional, tag = "12")]
1180 pub color_scheme: ::core::option::Option<::prost::alloc::string::String>,
1181 #[prost(enumeration = "common::DataModeType", tag = "13")]
1182 pub data_mode_type: i32,
1183 #[prost(message, optional, tag = "14")]
1184 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
1185 #[prost(message, optional, tag = "15")]
1186 pub decimal: ::core::option::Option<i32>,
1187 #[prost(message, optional, tag = "16")]
1188 pub legend: ::core::option::Option<common::Legend>,
1189 #[prost(message, optional, tag = "17")]
1190 pub hash_colors: ::core::option::Option<bool>,
1191 #[prost(message, optional, tag = "18")]
1192 pub y_axis_min: ::core::option::Option<f32>,
1193 #[prost(message, optional, tag = "19")]
1194 pub y_axis_max: ::core::option::Option<f32>,
1195 #[prost(message, optional, tag = "20")]
1196 pub decimal_precision: ::core::option::Option<bool>,
1197}
1198pub mod horizontal_bar_chart {
1200 #[derive(serde::Serialize, serde::Deserialize)]
1201 #[serde(rename_all = "snake_case")]
1202 #[derive(Clone, PartialEq, ::prost::Message)]
1203 pub struct Query {
1204 #[prost(oneof = "query::Value", tags = "1, 2, 3, 4")]
1205 pub value: ::core::option::Option<query::Value>,
1206 }
1207 pub mod query {
1209 #[derive(serde::Serialize, serde::Deserialize)]
1210 #[serde(rename_all = "snake_case")]
1211 #[derive(Clone, PartialEq, ::prost::Oneof)]
1212 pub enum Value {
1213 #[prost(message, tag = "1")]
1214 Logs(super::LogsQuery),
1215 #[prost(message, tag = "2")]
1216 Spans(super::SpansQuery),
1217 #[prost(message, tag = "3")]
1218 Metrics(super::MetricsQuery),
1219 #[prost(message, tag = "4")]
1220 Dataprime(super::DataprimeQuery),
1221 }
1222 }
1223 #[derive(serde::Serialize, serde::Deserialize)]
1224 #[serde(rename_all = "snake_case")]
1225 #[derive(Clone, PartialEq, ::prost::Message)]
1226 pub struct StackDefinition {
1227 #[prost(message, optional, tag = "1")]
1228 pub max_slices_per_bar: ::core::option::Option<i32>,
1229 #[prost(message, optional, tag = "2")]
1230 pub stack_name_template: ::core::option::Option<::prost::alloc::string::String>,
1231 }
1232 #[derive(serde::Serialize, serde::Deserialize)]
1233 #[serde(rename_all = "snake_case")]
1234 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
1235 pub struct YAxisViewBy {
1236 #[prost(oneof = "y_axis_view_by::YAxisView", tags = "1, 2")]
1237 pub y_axis_view: ::core::option::Option<y_axis_view_by::YAxisView>,
1238 }
1239 pub mod y_axis_view_by {
1241 #[derive(serde::Serialize, serde::Deserialize)]
1242 #[serde(rename_all = "snake_case")]
1243 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
1244 pub struct YAxisViewByCategory {}
1245 #[derive(serde::Serialize, serde::Deserialize)]
1246 #[serde(rename_all = "snake_case")]
1247 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
1248 pub struct YAxisViewByValue {}
1249 #[derive(serde::Serialize, serde::Deserialize)]
1250 #[serde(rename_all = "snake_case")]
1251 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
1252 pub enum YAxisView {
1253 #[prost(message, tag = "1")]
1254 Category(YAxisViewByCategory),
1255 #[prost(message, tag = "2")]
1256 Value(YAxisViewByValue),
1257 }
1258 }
1259 #[derive(serde::Serialize, serde::Deserialize)]
1260 #[serde(rename_all = "snake_case")]
1261 #[derive(Clone, PartialEq, ::prost::Message)]
1262 pub struct LogsQuery {
1263 #[prost(message, optional, tag = "1")]
1264 pub lucene_query: ::core::option::Option<
1265 super::super::super::common::LuceneQuery,
1266 >,
1267 #[prost(message, optional, tag = "2")]
1268 pub aggregation: ::core::option::Option<
1269 super::super::super::common::LogsAggregation,
1270 >,
1271 #[prost(message, repeated, tag = "3")]
1272 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::LogsFilter>,
1273 #[prost(message, repeated, tag = "4")]
1274 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1275 #[prost(message, optional, tag = "5")]
1276 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
1277 #[prost(message, repeated, tag = "6")]
1278 pub group_names_fields: ::prost::alloc::vec::Vec<
1279 super::super::super::common::ObservationField,
1280 >,
1281 #[prost(message, optional, tag = "7")]
1282 pub stacked_group_name_field: ::core::option::Option<
1283 super::super::super::common::ObservationField,
1284 >,
1285 #[prost(message, optional, tag = "8")]
1286 pub time_frame: ::core::option::Option<
1287 super::super::super::common::TimeFrameSelect,
1288 >,
1289 }
1290 #[derive(serde::Serialize, serde::Deserialize)]
1291 #[serde(rename_all = "snake_case")]
1292 #[derive(Clone, PartialEq, ::prost::Message)]
1293 pub struct SpansQuery {
1294 #[prost(message, optional, tag = "1")]
1295 pub lucene_query: ::core::option::Option<
1296 super::super::super::common::LuceneQuery,
1297 >,
1298 #[prost(message, optional, tag = "2")]
1299 pub aggregation: ::core::option::Option<
1300 super::super::super::common::SpansAggregation,
1301 >,
1302 #[prost(message, repeated, tag = "3")]
1303 pub filters: ::prost::alloc::vec::Vec<
1304 super::super::filters::filter::SpansFilter,
1305 >,
1306 #[prost(message, repeated, tag = "4")]
1307 pub group_names: ::prost::alloc::vec::Vec<
1308 super::super::super::common::SpanField,
1309 >,
1310 #[prost(message, optional, tag = "5")]
1311 pub stacked_group_name: ::core::option::Option<
1312 super::super::super::common::SpanField,
1313 >,
1314 #[prost(message, optional, tag = "6")]
1315 pub time_frame: ::core::option::Option<
1316 super::super::super::common::TimeFrameSelect,
1317 >,
1318 #[prost(message, repeated, tag = "7")]
1319 pub group_names_fields: ::prost::alloc::vec::Vec<
1320 super::super::super::common::SpanObservationField,
1321 >,
1322 #[prost(message, optional, tag = "8")]
1323 pub stacked_group_name_field: ::core::option::Option<
1324 super::super::super::common::SpanObservationField,
1325 >,
1326 }
1327 #[derive(serde::Serialize, serde::Deserialize)]
1328 #[serde(rename_all = "snake_case")]
1329 #[derive(Clone, PartialEq, ::prost::Message)]
1330 pub struct MetricsQuery {
1331 #[prost(message, optional, tag = "1")]
1332 pub promql_query: ::core::option::Option<
1333 super::super::super::common::PromQlQuery,
1334 >,
1335 #[prost(message, repeated, tag = "2")]
1336 pub filters: ::prost::alloc::vec::Vec<
1337 super::super::filters::filter::MetricsFilter,
1338 >,
1339 #[prost(message, repeated, tag = "3")]
1340 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1341 #[prost(message, optional, tag = "4")]
1342 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
1343 #[prost(enumeration = "super::common::MetricsQueryEditorMode", tag = "5")]
1344 pub editor_mode: i32,
1345 #[prost(message, optional, tag = "6")]
1346 pub time_frame: ::core::option::Option<
1347 super::super::super::common::TimeFrameSelect,
1348 >,
1349 #[prost(enumeration = "super::super::super::common::PromQlQueryType", tag = "7")]
1350 pub promql_query_type: i32,
1351 #[prost(enumeration = "super::common::Aggregation", tag = "8")]
1352 pub aggregation: i32,
1353 }
1354 #[derive(serde::Serialize, serde::Deserialize)]
1355 #[serde(rename_all = "snake_case")]
1356 #[derive(Clone, PartialEq, ::prost::Message)]
1357 pub struct DataprimeQuery {
1358 #[prost(message, optional, tag = "1")]
1359 pub dataprime_query: ::core::option::Option<
1360 super::super::super::common::DataprimeQuery,
1361 >,
1362 #[prost(message, repeated, tag = "2")]
1363 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::Source>,
1364 #[prost(message, repeated, tag = "3")]
1365 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1366 #[prost(message, optional, tag = "4")]
1367 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
1368 #[prost(message, optional, tag = "5")]
1369 pub time_frame: ::core::option::Option<
1370 super::super::super::common::TimeFrameSelect,
1371 >,
1372 }
1373}
1374#[derive(serde::Serialize, serde::Deserialize)]
1375#[serde(rename_all = "snake_case")]
1376#[derive(Clone, PartialEq, ::prost::Message)]
1377pub struct LineChart {
1378 #[prost(message, optional, tag = "2")]
1379 pub legend: ::core::option::Option<common::Legend>,
1380 #[prost(message, optional, tag = "6")]
1381 pub tooltip: ::core::option::Option<line_chart::Tooltip>,
1382 #[prost(message, repeated, tag = "7")]
1383 pub query_definitions: ::prost::alloc::vec::Vec<line_chart::QueryDefinition>,
1384 #[prost(enumeration = "line_chart::StackedLine", tag = "9")]
1385 pub stacked_line: i32,
1386}
1387pub mod line_chart {
1389 #[derive(serde::Serialize, serde::Deserialize)]
1390 #[serde(rename_all = "snake_case")]
1391 #[derive(Clone, PartialEq, ::prost::Message)]
1392 pub struct QueryDefinition {
1393 #[prost(message, optional, tag = "1")]
1394 pub id: ::core::option::Option<::prost::alloc::string::String>,
1395 #[prost(message, optional, tag = "2")]
1396 pub query: ::core::option::Option<Query>,
1397 #[prost(message, optional, tag = "3")]
1398 pub series_name_template: ::core::option::Option<::prost::alloc::string::String>,
1399 #[prost(message, optional, tag = "4")]
1400 pub series_count_limit: ::core::option::Option<i64>,
1401 #[prost(enumeration = "super::common::Unit", tag = "5")]
1402 pub unit: i32,
1403 #[prost(enumeration = "super::common::ScaleType", tag = "6")]
1404 pub scale_type: i32,
1405 #[prost(message, optional, tag = "7")]
1406 pub name: ::core::option::Option<::prost::alloc::string::String>,
1407 #[prost(message, optional, tag = "8")]
1408 pub is_visible: ::core::option::Option<bool>,
1409 #[prost(message, optional, tag = "9")]
1410 pub color_scheme: ::core::option::Option<::prost::alloc::string::String>,
1411 #[prost(message, optional, tag = "10")]
1412 pub resolution: ::core::option::Option<Resolution>,
1413 #[prost(enumeration = "super::common::DataModeType", tag = "11")]
1414 pub data_mode_type: i32,
1415 #[prost(message, optional, tag = "12")]
1416 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
1417 #[prost(message, optional, tag = "13")]
1418 pub decimal: ::core::option::Option<i32>,
1419 #[prost(message, optional, tag = "14")]
1420 pub hash_colors: ::core::option::Option<bool>,
1421 #[prost(message, optional, tag = "15")]
1422 pub y_axis_min: ::core::option::Option<f32>,
1423 #[prost(message, optional, tag = "16")]
1424 pub y_axis_max: ::core::option::Option<f32>,
1425 #[prost(message, optional, tag = "17")]
1426 pub decimal_precision: ::core::option::Option<bool>,
1427 }
1428 #[derive(serde::Serialize, serde::Deserialize)]
1429 #[serde(rename_all = "snake_case")]
1430 #[derive(Clone, PartialEq, ::prost::Message)]
1431 pub struct Query {
1432 #[prost(oneof = "query::Value", tags = "1, 2, 3, 5")]
1433 pub value: ::core::option::Option<query::Value>,
1434 }
1435 pub mod query {
1437 #[derive(serde::Serialize, serde::Deserialize)]
1438 #[serde(rename_all = "snake_case")]
1439 #[derive(Clone, PartialEq, ::prost::Oneof)]
1440 pub enum Value {
1441 #[prost(message, tag = "1")]
1442 Logs(super::LogsQuery),
1443 #[prost(message, tag = "2")]
1444 Metrics(super::MetricsQuery),
1445 #[prost(message, tag = "3")]
1446 Spans(super::SpansQuery),
1447 #[prost(message, tag = "5")]
1448 Dataprime(super::DataprimeQuery),
1449 }
1450 }
1451 #[derive(serde::Serialize, serde::Deserialize)]
1452 #[serde(rename_all = "snake_case")]
1453 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
1454 pub struct Tooltip {
1455 #[prost(message, optional, tag = "1")]
1456 pub show_labels: ::core::option::Option<bool>,
1457 #[prost(enumeration = "TooltipType", tag = "2")]
1458 pub r#type: i32,
1459 }
1460 #[derive(serde::Serialize, serde::Deserialize)]
1461 #[serde(rename_all = "snake_case")]
1462 #[derive(Clone, PartialEq, ::prost::Message)]
1463 pub struct LogsQuery {
1464 #[prost(message, optional, tag = "1")]
1465 pub lucene_query: ::core::option::Option<
1466 super::super::super::common::LuceneQuery,
1467 >,
1468 #[prost(message, repeated, tag = "2")]
1469 pub group_by: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1470 #[prost(message, repeated, tag = "3")]
1471 pub aggregations: ::prost::alloc::vec::Vec<
1472 super::super::super::common::LogsAggregation,
1473 >,
1474 #[prost(message, repeated, tag = "4")]
1475 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::LogsFilter>,
1476 #[prost(message, repeated, tag = "5")]
1477 pub group_bys: ::prost::alloc::vec::Vec<
1478 super::super::super::common::ObservationField,
1479 >,
1480 #[prost(message, optional, tag = "6")]
1481 pub time_frame: ::core::option::Option<
1482 super::super::super::common::TimeFrameSelect,
1483 >,
1484 }
1485 #[derive(serde::Serialize, serde::Deserialize)]
1486 #[serde(rename_all = "snake_case")]
1487 #[derive(Clone, PartialEq, ::prost::Message)]
1488 pub struct MetricsQuery {
1489 #[prost(message, optional, tag = "1")]
1490 pub promql_query: ::core::option::Option<
1491 super::super::super::common::PromQlQuery,
1492 >,
1493 #[prost(message, repeated, tag = "2")]
1494 pub filters: ::prost::alloc::vec::Vec<
1495 super::super::filters::filter::MetricsFilter,
1496 >,
1497 #[prost(enumeration = "super::common::MetricsQueryEditorMode", tag = "3")]
1498 pub editor_mode: i32,
1499 #[prost(message, optional, tag = "4")]
1500 pub time_frame: ::core::option::Option<
1501 super::super::super::common::TimeFrameSelect,
1502 >,
1503 }
1504 #[derive(serde::Serialize, serde::Deserialize)]
1505 #[serde(rename_all = "snake_case")]
1506 #[derive(Clone, PartialEq, ::prost::Message)]
1507 pub struct SpansQuery {
1508 #[prost(message, optional, tag = "1")]
1509 pub lucene_query: ::core::option::Option<
1510 super::super::super::common::LuceneQuery,
1511 >,
1512 #[prost(message, repeated, tag = "2")]
1513 pub group_by: ::prost::alloc::vec::Vec<super::super::super::common::SpanField>,
1514 #[prost(message, repeated, tag = "3")]
1515 pub aggregations: ::prost::alloc::vec::Vec<
1516 super::super::super::common::SpansAggregation,
1517 >,
1518 #[prost(message, repeated, tag = "4")]
1519 pub filters: ::prost::alloc::vec::Vec<
1520 super::super::filters::filter::SpansFilter,
1521 >,
1522 #[prost(message, optional, tag = "5")]
1523 pub time_frame: ::core::option::Option<
1524 super::super::super::common::TimeFrameSelect,
1525 >,
1526 #[prost(message, repeated, tag = "6")]
1527 pub group_bys: ::prost::alloc::vec::Vec<
1528 super::super::super::common::SpanObservationField,
1529 >,
1530 }
1531 #[derive(serde::Serialize, serde::Deserialize)]
1532 #[serde(rename_all = "snake_case")]
1533 #[derive(Clone, PartialEq, ::prost::Message)]
1534 pub struct DataprimeQuery {
1535 #[prost(message, optional, tag = "1")]
1536 pub dataprime_query: ::core::option::Option<
1537 super::super::super::common::DataprimeQuery,
1538 >,
1539 #[prost(message, repeated, tag = "2")]
1540 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::Source>,
1541 #[prost(message, optional, tag = "3")]
1542 pub time_frame: ::core::option::Option<
1543 super::super::super::common::TimeFrameSelect,
1544 >,
1545 }
1546 #[derive(serde::Serialize, serde::Deserialize)]
1547 #[serde(rename_all = "snake_case")]
1548 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
1549 pub struct Resolution {
1550 #[prost(message, optional, tag = "1")]
1552 pub interval: ::core::option::Option<::prost_wkt_types::Duration>,
1553 #[prost(message, optional, tag = "2")]
1554 pub buckets_presented: ::core::option::Option<i32>,
1555 }
1556 #[derive(serde::Serialize, serde::Deserialize)]
1557 #[serde(rename_all = "snake_case")]
1558 #[derive(
1559 Clone,
1560 Copy,
1561 Debug,
1562 PartialEq,
1563 Eq,
1564 Hash,
1565 PartialOrd,
1566 Ord,
1567 ::prost::Enumeration
1568 )]
1569 #[repr(i32)]
1570 pub enum TooltipType {
1571 Unspecified = 0,
1572 All = 1,
1573 Single = 2,
1574 }
1575 impl TooltipType {
1576 pub fn as_str_name(&self) -> &'static str {
1581 match self {
1582 Self::Unspecified => "TOOLTIP_TYPE_UNSPECIFIED",
1583 Self::All => "TOOLTIP_TYPE_ALL",
1584 Self::Single => "TOOLTIP_TYPE_SINGLE",
1585 }
1586 }
1587 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1589 match value {
1590 "TOOLTIP_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
1591 "TOOLTIP_TYPE_ALL" => Some(Self::All),
1592 "TOOLTIP_TYPE_SINGLE" => Some(Self::Single),
1593 _ => None,
1594 }
1595 }
1596 }
1597 #[derive(serde::Serialize, serde::Deserialize)]
1598 #[serde(rename_all = "snake_case")]
1599 #[derive(
1600 Clone,
1601 Copy,
1602 Debug,
1603 PartialEq,
1604 Eq,
1605 Hash,
1606 PartialOrd,
1607 Ord,
1608 ::prost::Enumeration
1609 )]
1610 #[repr(i32)]
1611 pub enum StackedLine {
1612 Unspecified = 0,
1613 Absolute = 1,
1614 Relative = 2,
1615 }
1616 impl StackedLine {
1617 pub fn as_str_name(&self) -> &'static str {
1622 match self {
1623 Self::Unspecified => "STACKED_LINE_UNSPECIFIED",
1624 Self::Absolute => "STACKED_LINE_ABSOLUTE",
1625 Self::Relative => "STACKED_LINE_RELATIVE",
1626 }
1627 }
1628 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1630 match value {
1631 "STACKED_LINE_UNSPECIFIED" => Some(Self::Unspecified),
1632 "STACKED_LINE_ABSOLUTE" => Some(Self::Absolute),
1633 "STACKED_LINE_RELATIVE" => Some(Self::Relative),
1634 _ => None,
1635 }
1636 }
1637 }
1638}
1639#[derive(serde::Serialize, serde::Deserialize)]
1640#[serde(rename_all = "snake_case")]
1641#[derive(Clone, PartialEq, ::prost::Message)]
1642pub struct Markdown {
1643 #[prost(message, optional, tag = "1")]
1644 pub markdown_text: ::core::option::Option<::prost::alloc::string::String>,
1645 #[prost(message, optional, tag = "2")]
1646 pub tooltip_text: ::core::option::Option<::prost::alloc::string::String>,
1647}
1648#[derive(serde::Serialize, serde::Deserialize)]
1649#[serde(rename_all = "snake_case")]
1650#[derive(Clone, PartialEq, ::prost::Message)]
1651pub struct PieChart {
1652 #[prost(message, optional, tag = "1")]
1653 pub query: ::core::option::Option<pie_chart::Query>,
1654 #[prost(message, optional, tag = "2")]
1655 pub max_slices_per_chart: ::core::option::Option<i32>,
1656 #[prost(message, optional, tag = "3")]
1657 pub min_slice_percentage: ::core::option::Option<i32>,
1658 #[prost(message, optional, tag = "4")]
1659 pub stack_definition: ::core::option::Option<pie_chart::StackDefinition>,
1660 #[prost(message, optional, tag = "5")]
1661 pub label_definition: ::core::option::Option<pie_chart::LabelDefinition>,
1662 #[prost(message, optional, tag = "6")]
1664 pub show_legend: ::core::option::Option<bool>,
1665 #[prost(message, optional, tag = "7")]
1666 pub group_name_template: ::core::option::Option<::prost::alloc::string::String>,
1667 #[prost(enumeration = "common::Unit", tag = "8")]
1668 pub unit: i32,
1669 #[prost(message, optional, tag = "9")]
1670 pub color_scheme: ::core::option::Option<::prost::alloc::string::String>,
1671 #[prost(enumeration = "common::DataModeType", tag = "10")]
1672 pub data_mode_type: i32,
1673 #[prost(message, optional, tag = "11")]
1674 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
1675 #[prost(message, optional, tag = "12")]
1676 pub decimal: ::core::option::Option<i32>,
1677 #[prost(message, optional, tag = "13")]
1678 pub legend: ::core::option::Option<common::Legend>,
1679 #[prost(message, optional, tag = "14")]
1680 pub hash_colors: ::core::option::Option<bool>,
1681 #[prost(message, optional, tag = "15")]
1682 pub decimal_precision: ::core::option::Option<bool>,
1683}
1684pub mod pie_chart {
1686 #[derive(serde::Serialize, serde::Deserialize)]
1687 #[serde(rename_all = "snake_case")]
1688 #[derive(Clone, PartialEq, ::prost::Message)]
1689 pub struct Query {
1690 #[prost(oneof = "query::Value", tags = "1, 2, 3, 4")]
1691 pub value: ::core::option::Option<query::Value>,
1692 }
1693 pub mod query {
1695 #[derive(serde::Serialize, serde::Deserialize)]
1696 #[serde(rename_all = "snake_case")]
1697 #[derive(Clone, PartialEq, ::prost::Oneof)]
1698 pub enum Value {
1699 #[prost(message, tag = "1")]
1700 Logs(super::LogsQuery),
1701 #[prost(message, tag = "2")]
1702 Spans(super::SpansQuery),
1703 #[prost(message, tag = "3")]
1704 Metrics(super::MetricsQuery),
1705 #[prost(message, tag = "4")]
1706 Dataprime(super::DataprimeQuery),
1707 }
1708 }
1709 #[derive(serde::Serialize, serde::Deserialize)]
1710 #[serde(rename_all = "snake_case")]
1711 #[derive(Clone, PartialEq, ::prost::Message)]
1712 pub struct StackDefinition {
1713 #[prost(message, optional, tag = "1")]
1714 pub max_slices_per_stack: ::core::option::Option<i32>,
1715 #[prost(message, optional, tag = "2")]
1716 pub stack_name_template: ::core::option::Option<::prost::alloc::string::String>,
1717 }
1718 #[derive(serde::Serialize, serde::Deserialize)]
1719 #[serde(rename_all = "snake_case")]
1720 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
1721 pub struct LabelDefinition {
1722 #[prost(enumeration = "LabelSource", tag = "1")]
1723 pub label_source: i32,
1724 #[prost(message, optional, tag = "2")]
1725 pub is_visible: ::core::option::Option<bool>,
1726 #[prost(message, optional, tag = "3")]
1727 pub show_name: ::core::option::Option<bool>,
1728 #[prost(message, optional, tag = "4")]
1729 pub show_value: ::core::option::Option<bool>,
1730 #[prost(message, optional, tag = "5")]
1731 pub show_percentage: ::core::option::Option<bool>,
1732 }
1733 #[derive(serde::Serialize, serde::Deserialize)]
1734 #[serde(rename_all = "snake_case")]
1735 #[derive(Clone, PartialEq, ::prost::Message)]
1736 pub struct LogsQuery {
1737 #[prost(message, optional, tag = "1")]
1738 pub lucene_query: ::core::option::Option<
1739 super::super::super::common::LuceneQuery,
1740 >,
1741 #[prost(message, optional, tag = "2")]
1742 pub aggregation: ::core::option::Option<
1743 super::super::super::common::LogsAggregation,
1744 >,
1745 #[prost(message, repeated, tag = "3")]
1746 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::LogsFilter>,
1747 #[prost(message, repeated, tag = "4")]
1748 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1749 #[prost(message, optional, tag = "5")]
1750 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
1751 #[prost(message, repeated, tag = "6")]
1752 pub group_names_fields: ::prost::alloc::vec::Vec<
1753 super::super::super::common::ObservationField,
1754 >,
1755 #[prost(message, optional, tag = "7")]
1756 pub stacked_group_name_field: ::core::option::Option<
1757 super::super::super::common::ObservationField,
1758 >,
1759 #[prost(message, optional, tag = "8")]
1760 pub time_frame: ::core::option::Option<
1761 super::super::super::common::TimeFrameSelect,
1762 >,
1763 }
1764 #[derive(serde::Serialize, serde::Deserialize)]
1765 #[serde(rename_all = "snake_case")]
1766 #[derive(Clone, PartialEq, ::prost::Message)]
1767 pub struct SpansQuery {
1768 #[prost(message, optional, tag = "1")]
1769 pub lucene_query: ::core::option::Option<
1770 super::super::super::common::LuceneQuery,
1771 >,
1772 #[prost(message, optional, tag = "2")]
1773 pub aggregation: ::core::option::Option<
1774 super::super::super::common::SpansAggregation,
1775 >,
1776 #[prost(message, repeated, tag = "3")]
1777 pub filters: ::prost::alloc::vec::Vec<
1778 super::super::filters::filter::SpansFilter,
1779 >,
1780 #[prost(message, repeated, tag = "4")]
1781 pub group_names: ::prost::alloc::vec::Vec<
1782 super::super::super::common::SpanField,
1783 >,
1784 #[prost(message, optional, tag = "5")]
1785 pub stacked_group_name: ::core::option::Option<
1786 super::super::super::common::SpanField,
1787 >,
1788 #[prost(message, optional, tag = "6")]
1789 pub time_frame: ::core::option::Option<
1790 super::super::super::common::TimeFrameSelect,
1791 >,
1792 #[prost(message, repeated, tag = "7")]
1793 pub group_names_fields: ::prost::alloc::vec::Vec<
1794 super::super::super::common::SpanObservationField,
1795 >,
1796 #[prost(message, optional, tag = "8")]
1797 pub stacked_group_name_field: ::core::option::Option<
1798 super::super::super::common::SpanObservationField,
1799 >,
1800 }
1801 #[derive(serde::Serialize, serde::Deserialize)]
1802 #[serde(rename_all = "snake_case")]
1803 #[derive(Clone, PartialEq, ::prost::Message)]
1804 pub struct MetricsQuery {
1805 #[prost(message, optional, tag = "1")]
1806 pub promql_query: ::core::option::Option<
1807 super::super::super::common::PromQlQuery,
1808 >,
1809 #[prost(message, repeated, tag = "2")]
1810 pub filters: ::prost::alloc::vec::Vec<
1811 super::super::filters::filter::MetricsFilter,
1812 >,
1813 #[prost(message, repeated, tag = "3")]
1814 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1815 #[prost(message, optional, tag = "4")]
1816 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
1817 #[prost(enumeration = "super::common::MetricsQueryEditorMode", tag = "5")]
1818 pub editor_mode: i32,
1819 #[prost(message, optional, tag = "6")]
1820 pub time_frame: ::core::option::Option<
1821 super::super::super::common::TimeFrameSelect,
1822 >,
1823 #[prost(enumeration = "super::super::super::common::PromQlQueryType", tag = "7")]
1824 pub promql_query_type: i32,
1825 #[prost(enumeration = "super::common::Aggregation", tag = "8")]
1826 pub aggregation: i32,
1827 }
1828 #[derive(serde::Serialize, serde::Deserialize)]
1829 #[serde(rename_all = "snake_case")]
1830 #[derive(Clone, PartialEq, ::prost::Message)]
1831 pub struct DataprimeQuery {
1832 #[prost(message, optional, tag = "1")]
1833 pub dataprime_query: ::core::option::Option<
1834 super::super::super::common::DataprimeQuery,
1835 >,
1836 #[prost(message, repeated, tag = "2")]
1837 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::Source>,
1838 #[prost(message, repeated, tag = "3")]
1839 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1840 #[prost(message, optional, tag = "4")]
1841 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
1842 #[prost(message, optional, tag = "5")]
1843 pub time_frame: ::core::option::Option<
1844 super::super::super::common::TimeFrameSelect,
1845 >,
1846 }
1847 #[derive(serde::Serialize, serde::Deserialize)]
1848 #[serde(rename_all = "snake_case")]
1849 #[derive(
1850 Clone,
1851 Copy,
1852 Debug,
1853 PartialEq,
1854 Eq,
1855 Hash,
1856 PartialOrd,
1857 Ord,
1858 ::prost::Enumeration
1859 )]
1860 #[repr(i32)]
1861 pub enum LabelSource {
1862 Unspecified = 0,
1863 Inner = 1,
1864 Stack = 2,
1865 }
1866 impl LabelSource {
1867 pub fn as_str_name(&self) -> &'static str {
1872 match self {
1873 Self::Unspecified => "LABEL_SOURCE_UNSPECIFIED",
1874 Self::Inner => "LABEL_SOURCE_INNER",
1875 Self::Stack => "LABEL_SOURCE_STACK",
1876 }
1877 }
1878 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1880 match value {
1881 "LABEL_SOURCE_UNSPECIFIED" => Some(Self::Unspecified),
1882 "LABEL_SOURCE_INNER" => Some(Self::Inner),
1883 "LABEL_SOURCE_STACK" => Some(Self::Stack),
1884 _ => None,
1885 }
1886 }
1887 }
1888}