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 #[prost(message, optional, tag = "4")]
499 pub visualization: ::core::option::Option<dynamic::Visualization>,
500}
501pub mod dynamic {
503 #[derive(serde::Serialize, serde::Deserialize)]
504 #[serde(rename_all = "snake_case")]
505 #[derive(Clone, PartialEq, ::prost::Message)]
506 pub struct Query {
507 #[prost(oneof = "query::Value", tags = "1, 2, 3, 4")]
508 pub value: ::core::option::Option<query::Value>,
509 }
510 pub mod query {
512 #[derive(serde::Serialize, serde::Deserialize)]
513 #[serde(rename_all = "snake_case")]
514 #[derive(Clone, PartialEq, ::prost::Message)]
515 pub struct Logs {
516 #[prost(message, optional, tag = "1")]
517 pub lucene_query: ::core::option::Option<
518 super::super::super::super::common::LuceneQuery,
519 >,
520 #[prost(enumeration = "super::super::common::DataModeType", tag = "2")]
521 pub data_mode_type: i32,
522 #[prost(message, repeated, tag = "3")]
523 pub filters: ::prost::alloc::vec::Vec<
524 super::super::super::filters::filter::LogsFilter,
525 >,
526 #[prost(message, repeated, tag = "4")]
527 pub group_by: ::prost::alloc::vec::Vec<
528 super::super::super::super::common::ObservationField,
529 >,
530 #[prost(message, repeated, tag = "5")]
531 pub aggregation: ::prost::alloc::vec::Vec<
532 super::super::super::super::common::LogsAggregation,
533 >,
534 }
535 #[derive(serde::Serialize, serde::Deserialize)]
536 #[serde(rename_all = "snake_case")]
537 #[derive(Clone, PartialEq, ::prost::Message)]
538 pub struct Spans {
539 #[prost(message, optional, tag = "1")]
540 pub lucene_query: ::core::option::Option<
541 super::super::super::super::common::LuceneQuery,
542 >,
543 #[prost(enumeration = "super::super::common::DataModeType", tag = "2")]
544 pub data_mode_type: i32,
545 #[prost(message, repeated, tag = "3")]
546 pub filters: ::prost::alloc::vec::Vec<
547 super::super::super::filters::filter::SpansFilter,
548 >,
549 #[prost(message, repeated, tag = "4")]
550 pub group_by: ::prost::alloc::vec::Vec<
551 super::super::super::super::common::SpanObservationField,
552 >,
553 #[prost(message, repeated, tag = "5")]
554 pub aggregation: ::prost::alloc::vec::Vec<
555 super::super::super::super::common::LogsAggregation,
556 >,
557 }
558 #[derive(serde::Serialize, serde::Deserialize)]
559 #[serde(rename_all = "snake_case")]
560 #[derive(Clone, PartialEq, ::prost::Message)]
561 pub struct Metrics {
562 #[prost(message, optional, tag = "1")]
563 pub promql_query: ::core::option::Option<
564 super::super::super::super::common::PromQlQuery,
565 >,
566 #[prost(
567 enumeration = "super::super::super::super::common::PromQlQueryType",
568 tag = "2"
569 )]
570 pub promql_query_type: i32,
571 #[prost(
572 enumeration = "super::super::common::MetricsQueryEditorMode",
573 tag = "3"
574 )]
575 pub editor_mode: i32,
576 #[prost(
577 enumeration = "super::super::super::super::common::MetricsSeriesLimitType",
578 tag = "4"
579 )]
580 pub series_limit_type: i32,
581 }
582 #[derive(serde::Serialize, serde::Deserialize)]
583 #[serde(rename_all = "snake_case")]
584 #[derive(Clone, PartialEq, ::prost::Message)]
585 pub struct Dataprime {
586 #[prost(message, optional, tag = "1")]
587 pub dataprime_query: ::core::option::Option<
588 super::super::super::super::common::DataprimeQuery,
589 >,
590 #[prost(enumeration = "super::super::common::DataModeType", tag = "2")]
591 pub data_mode_type: i32,
592 }
593 #[derive(serde::Serialize, serde::Deserialize)]
594 #[serde(rename_all = "snake_case")]
595 #[derive(Clone, PartialEq, ::prost::Oneof)]
596 pub enum Value {
597 #[prost(message, tag = "1")]
598 Logs(Logs),
599 #[prost(message, tag = "2")]
600 Spans(Spans),
601 #[prost(message, tag = "3")]
602 Metrics(Metrics),
603 #[prost(message, tag = "4")]
604 Dataprime(Dataprime),
605 }
606 }
607 #[derive(serde::Serialize, serde::Deserialize)]
608 #[serde(rename_all = "snake_case")]
609 #[derive(Clone, PartialEq, ::prost::Message)]
610 pub struct Visualization {
611 #[prost(oneof = "visualization::Value", tags = "1, 2, 3, 4, 5, 6, 7, 8, 9")]
612 pub value: ::core::option::Option<visualization::Value>,
613 }
614 pub mod visualization {
616 #[derive(serde::Serialize, serde::Deserialize)]
617 #[serde(rename_all = "snake_case")]
618 #[derive(Clone, PartialEq, ::prost::Message)]
619 pub struct Table {
620 #[prost(message, repeated, tag = "1")]
621 pub columns: ::prost::alloc::vec::Vec<table::Column>,
622 }
623 pub mod table {
625 #[derive(serde::Serialize, serde::Deserialize)]
626 #[serde(rename_all = "snake_case")]
627 #[derive(Clone, PartialEq, ::prost::Message)]
628 pub struct Column {
629 #[prost(message, optional, tag = "1")]
630 pub field: ::core::option::Option<
631 super::super::super::super::super::common::ObservationField,
632 >,
633 }
634 }
635 #[derive(serde::Serialize, serde::Deserialize)]
636 #[serde(rename_all = "snake_case")]
637 #[derive(Clone, PartialEq, ::prost::Message)]
638 pub struct TimeSeriesLines {
639 #[prost(message, optional, tag = "1")]
640 pub temporal_field: ::core::option::Option<
641 super::super::super::super::common::ObservationField,
642 >,
643 #[prost(message, repeated, tag = "2")]
644 pub value_fields: ::prost::alloc::vec::Vec<
645 super::super::super::super::common::ObservationField,
646 >,
647 #[prost(message, repeated, tag = "3")]
648 pub category_fields: ::prost::alloc::vec::Vec<
649 super::super::super::super::common::ObservationField,
650 >,
651 #[prost(message, optional, tag = "4")]
652 pub legend: ::core::option::Option<super::super::common::Legend>,
653 #[prost(message, optional, tag = "5")]
654 pub tooltip: ::core::option::Option<TimeSeriesTooltip>,
655 #[prost(enumeration = "time_series_lines::StackedLine", tag = "6")]
656 pub stacked_line: i32,
657 #[prost(message, optional, tag = "7")]
658 pub connect_nulls: ::core::option::Option<bool>,
659 #[prost(message, optional, tag = "8")]
660 pub series_name_template: ::core::option::Option<
661 ::prost::alloc::string::String,
662 >,
663 #[prost(message, optional, tag = "9")]
664 pub series_count_limit: ::core::option::Option<i64>,
665 #[prost(enumeration = "super::super::common::Unit", tag = "10")]
666 pub unit: i32,
667 #[prost(message, optional, tag = "11")]
668 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
669 #[prost(enumeration = "super::super::common::ScaleType", tag = "12")]
670 pub scale_type: i32,
671 #[prost(message, optional, tag = "13")]
672 pub color_scheme: ::core::option::Option<::prost::alloc::string::String>,
673 #[prost(message, optional, tag = "14")]
674 pub hash_colors: ::core::option::Option<bool>,
675 #[prost(message, optional, tag = "15")]
676 pub decimal_precision: ::core::option::Option<i32>,
677 #[prost(message, optional, tag = "17")]
678 pub allow_abbreviation: ::core::option::Option<bool>,
679 #[prost(message, optional, tag = "18")]
680 pub y_axis_min: ::core::option::Option<f32>,
681 #[prost(message, optional, tag = "19")]
682 pub y_axis_max: ::core::option::Option<f32>,
683 }
684 pub mod time_series_lines {
686 #[derive(serde::Serialize, serde::Deserialize)]
687 #[serde(rename_all = "snake_case")]
688 #[derive(
689 Clone,
690 Copy,
691 Debug,
692 PartialEq,
693 Eq,
694 Hash,
695 PartialOrd,
696 Ord,
697 ::prost::Enumeration
698 )]
699 #[repr(i32)]
700 pub enum StackedLine {
701 Unspecified = 0,
702 Absolute = 1,
703 Relative = 2,
704 }
705 impl StackedLine {
706 pub fn as_str_name(&self) -> &'static str {
711 match self {
712 Self::Unspecified => "STACKED_LINE_UNSPECIFIED",
713 Self::Absolute => "STACKED_LINE_ABSOLUTE",
714 Self::Relative => "STACKED_LINE_RELATIVE",
715 }
716 }
717 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
719 match value {
720 "STACKED_LINE_UNSPECIFIED" => Some(Self::Unspecified),
721 "STACKED_LINE_ABSOLUTE" => Some(Self::Absolute),
722 "STACKED_LINE_RELATIVE" => Some(Self::Relative),
723 _ => None,
724 }
725 }
726 }
727 }
728 #[derive(serde::Serialize, serde::Deserialize)]
729 #[serde(rename_all = "snake_case")]
730 #[derive(Clone, PartialEq, ::prost::Message)]
731 pub struct TimeSeriesBars {
732 #[prost(message, optional, tag = "1")]
733 pub temporal_field: ::core::option::Option<
734 super::super::super::super::common::ObservationField,
735 >,
736 #[prost(message, repeated, tag = "2")]
737 pub value_fields: ::prost::alloc::vec::Vec<
738 super::super::super::super::common::ObservationField,
739 >,
740 #[prost(message, repeated, tag = "3")]
741 pub category_fields: ::prost::alloc::vec::Vec<
742 super::super::super::super::common::ObservationField,
743 >,
744 #[prost(message, optional, tag = "4")]
745 pub legend: ::core::option::Option<super::super::common::Legend>,
746 #[prost(message, optional, tag = "5")]
747 pub tooltip: ::core::option::Option<TimeSeriesTooltip>,
748 #[prost(message, optional, tag = "6")]
749 pub series_name_template: ::core::option::Option<
750 ::prost::alloc::string::String,
751 >,
752 #[prost(message, optional, tag = "7")]
753 pub max_slices_per_bar: ::core::option::Option<i32>,
754 #[prost(enumeration = "super::super::common::Unit", tag = "8")]
755 pub unit: i32,
756 #[prost(message, optional, tag = "9")]
757 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
758 #[prost(enumeration = "super::super::common::ScaleType", tag = "10")]
759 pub scale_type: i32,
760 #[prost(message, optional, tag = "11")]
761 pub color_scheme: ::core::option::Option<::prost::alloc::string::String>,
762 #[prost(message, optional, tag = "12")]
763 pub hash_colors: ::core::option::Option<bool>,
764 #[prost(message, optional, tag = "13")]
765 pub decimal_precision: ::core::option::Option<i32>,
766 #[prost(message, optional, tag = "14")]
767 pub allow_abbreviation: ::core::option::Option<bool>,
768 #[prost(message, optional, tag = "15")]
769 pub y_axis_min: ::core::option::Option<f32>,
770 #[prost(message, optional, tag = "16")]
771 pub y_axis_max: ::core::option::Option<f32>,
772 #[prost(enumeration = "BarValueDisplay", tag = "17")]
773 pub bar_value_display: i32,
774 #[prost(enumeration = "super::super::common::SortByType", tag = "18")]
775 pub sort_by: i32,
776 }
777 #[derive(serde::Serialize, serde::Deserialize)]
778 #[serde(rename_all = "snake_case")]
779 #[derive(Clone, PartialEq, ::prost::Message)]
780 pub struct Stat {
781 #[prost(message, optional, tag = "1")]
782 pub value_field: ::core::option::Option<
783 super::super::super::super::common::ObservationField,
784 >,
785 #[prost(message, repeated, tag = "2")]
786 pub category_fields: ::prost::alloc::vec::Vec<
787 super::super::super::super::common::ObservationField,
788 >,
789 #[prost(message, optional, tag = "3")]
790 pub min: ::core::option::Option<f64>,
791 #[prost(message, optional, tag = "4")]
792 pub max: ::core::option::Option<f64>,
793 #[prost(enumeration = "super::super::common::Unit", tag = "5")]
794 pub unit: i32,
795 #[prost(message, optional, tag = "6")]
796 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
797 #[prost(enumeration = "super::super::common::ThresholdType", tag = "7")]
798 pub threshold_type: i32,
799 #[prost(message, repeated, tag = "8")]
800 pub thresholds: ::prost::alloc::vec::Vec<super::super::common::Threshold>,
801 #[prost(message, optional, tag = "9")]
802 pub legend: ::core::option::Option<super::super::common::Legend>,
803 #[prost(enumeration = "super::super::common::LegendBy", tag = "10")]
804 pub legend_by: i32,
805 #[prost(message, optional, tag = "11")]
806 pub decimal_precision: ::core::option::Option<i32>,
807 #[prost(message, optional, tag = "12")]
808 pub allow_abbreviation: ::core::option::Option<bool>,
809 #[prost(message, optional, tag = "13")]
810 pub display_series_name: ::core::option::Option<bool>,
811 #[prost(enumeration = "super::super::common::ThresholdBy", tag = "14")]
812 pub threshold_by: i32,
813 }
814 #[derive(serde::Serialize, serde::Deserialize)]
815 #[serde(rename_all = "snake_case")]
816 #[derive(Clone, PartialEq, ::prost::Message)]
817 pub struct Gauge {
818 #[prost(message, optional, tag = "1")]
819 pub value_field: ::core::option::Option<
820 super::super::super::super::common::ObservationField,
821 >,
822 #[prost(message, repeated, tag = "2")]
823 pub category_fields: ::prost::alloc::vec::Vec<
824 super::super::super::super::common::ObservationField,
825 >,
826 #[prost(message, optional, tag = "3")]
827 pub min: ::core::option::Option<f64>,
828 #[prost(message, optional, tag = "4")]
829 pub max: ::core::option::Option<f64>,
830 #[prost(enumeration = "super::super::common::Unit", tag = "5")]
831 pub unit: i32,
832 #[prost(message, optional, tag = "6")]
833 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
834 #[prost(enumeration = "super::super::common::ThresholdType", tag = "7")]
835 pub threshold_type: i32,
836 #[prost(message, repeated, tag = "8")]
837 pub thresholds: ::prost::alloc::vec::Vec<super::super::common::Threshold>,
838 #[prost(message, optional, tag = "9")]
839 pub legend: ::core::option::Option<super::super::common::Legend>,
840 #[prost(enumeration = "super::super::common::LegendBy", tag = "10")]
841 pub legend_by: i32,
842 #[prost(message, optional, tag = "11")]
843 pub decimal_precision: ::core::option::Option<i32>,
844 #[prost(message, optional, tag = "12")]
845 pub allow_abbreviation: ::core::option::Option<bool>,
846 #[prost(message, optional, tag = "13")]
847 pub show_inner_arc: ::core::option::Option<bool>,
848 #[prost(message, optional, tag = "14")]
849 pub show_outer_arc: ::core::option::Option<bool>,
850 #[prost(message, optional, tag = "15")]
851 pub display_series_name: ::core::option::Option<bool>,
852 }
853 #[derive(serde::Serialize, serde::Deserialize)]
854 #[serde(rename_all = "snake_case")]
855 #[derive(Clone, PartialEq, ::prost::Message)]
856 pub struct HexagonBins {
857 #[prost(message, optional, tag = "1")]
858 pub value_field: ::core::option::Option<
859 super::super::super::super::common::ObservationField,
860 >,
861 #[prost(message, repeated, tag = "2")]
862 pub category_fields: ::prost::alloc::vec::Vec<
863 super::super::super::super::common::ObservationField,
864 >,
865 #[prost(message, optional, tag = "3")]
866 pub min: ::core::option::Option<f64>,
867 #[prost(message, optional, tag = "4")]
868 pub max: ::core::option::Option<f64>,
869 #[prost(enumeration = "super::super::common::Unit", tag = "5")]
870 pub unit: i32,
871 #[prost(message, optional, tag = "6")]
872 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
873 #[prost(enumeration = "super::super::common::ThresholdType", tag = "7")]
874 pub threshold_type: i32,
875 #[prost(message, repeated, tag = "8")]
876 pub thresholds: ::prost::alloc::vec::Vec<super::super::common::Threshold>,
877 #[prost(message, optional, tag = "9")]
878 pub legend: ::core::option::Option<super::super::common::Legend>,
879 #[prost(enumeration = "super::super::common::LegendBy", tag = "10")]
880 pub legend_by: i32,
881 #[prost(message, optional, tag = "11")]
882 pub decimal_precision: ::core::option::Option<i32>,
883 #[prost(message, optional, tag = "12")]
884 pub allow_abbreviation: ::core::option::Option<bool>,
885 }
886 #[derive(serde::Serialize, serde::Deserialize)]
887 #[serde(rename_all = "snake_case")]
888 #[derive(Clone, PartialEq, ::prost::Message)]
889 pub struct PieChart {
890 #[prost(message, optional, tag = "1")]
891 pub value_field: ::core::option::Option<
892 super::super::super::super::common::ObservationField,
893 >,
894 #[prost(message, repeated, tag = "2")]
895 pub category_fields: ::prost::alloc::vec::Vec<
896 super::super::super::super::common::ObservationField,
897 >,
898 #[prost(message, repeated, tag = "3")]
899 pub sub_category_fields: ::prost::alloc::vec::Vec<
900 super::super::super::super::common::ObservationField,
901 >,
902 #[prost(message, optional, tag = "4")]
903 pub max_slices_per_chart: ::core::option::Option<i32>,
904 #[prost(message, optional, tag = "5")]
905 pub min_slice_percentage: ::core::option::Option<i32>,
906 #[prost(message, optional, tag = "6")]
907 pub max_slices_per_stack: ::core::option::Option<i32>,
908 #[prost(message, optional, tag = "7")]
909 pub stack_name_template: ::core::option::Option<
910 ::prost::alloc::string::String,
911 >,
912 #[prost(message, optional, tag = "8")]
913 pub label_definition: ::core::option::Option<pie_chart::LabelDefinition>,
914 #[prost(message, optional, tag = "9")]
915 pub group_name_template: ::core::option::Option<
916 ::prost::alloc::string::String,
917 >,
918 #[prost(enumeration = "super::super::common::Unit", tag = "10")]
919 pub unit: i32,
920 #[prost(message, optional, tag = "11")]
921 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
922 #[prost(message, optional, tag = "12")]
923 pub color_scheme: ::core::option::Option<::prost::alloc::string::String>,
924 #[prost(message, optional, tag = "13")]
925 pub hash_colors: ::core::option::Option<bool>,
926 #[prost(message, optional, tag = "14")]
927 pub decimal_precision: ::core::option::Option<i32>,
928 #[prost(message, optional, tag = "15")]
929 pub allow_abbreviation: ::core::option::Option<bool>,
930 #[prost(message, optional, tag = "16")]
931 pub legend: ::core::option::Option<super::super::common::Legend>,
932 }
933 pub mod pie_chart {
935 #[derive(serde::Serialize, serde::Deserialize)]
936 #[serde(rename_all = "snake_case")]
937 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
938 pub struct LabelDefinition {
939 #[prost(enumeration = "LabelSource", tag = "1")]
940 pub label_source: i32,
941 #[prost(message, optional, tag = "2")]
942 pub is_visible: ::core::option::Option<bool>,
943 #[prost(message, optional, tag = "3")]
944 pub show_name: ::core::option::Option<bool>,
945 #[prost(message, optional, tag = "4")]
946 pub show_value: ::core::option::Option<bool>,
947 #[prost(message, optional, tag = "5")]
948 pub show_percentage: ::core::option::Option<bool>,
949 }
950 #[derive(serde::Serialize, serde::Deserialize)]
951 #[serde(rename_all = "snake_case")]
952 #[derive(
953 Clone,
954 Copy,
955 Debug,
956 PartialEq,
957 Eq,
958 Hash,
959 PartialOrd,
960 Ord,
961 ::prost::Enumeration
962 )]
963 #[repr(i32)]
964 pub enum LabelSource {
965 Unspecified = 0,
966 Inner = 1,
967 Stack = 2,
968 }
969 impl LabelSource {
970 pub fn as_str_name(&self) -> &'static str {
975 match self {
976 Self::Unspecified => "LABEL_SOURCE_UNSPECIFIED",
977 Self::Inner => "LABEL_SOURCE_INNER",
978 Self::Stack => "LABEL_SOURCE_STACK",
979 }
980 }
981 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
983 match value {
984 "LABEL_SOURCE_UNSPECIFIED" => Some(Self::Unspecified),
985 "LABEL_SOURCE_INNER" => Some(Self::Inner),
986 "LABEL_SOURCE_STACK" => Some(Self::Stack),
987 _ => None,
988 }
989 }
990 }
991 }
992 #[derive(serde::Serialize, serde::Deserialize)]
993 #[serde(rename_all = "snake_case")]
994 #[derive(Clone, PartialEq, ::prost::Message)]
995 pub struct HorizontalBars {
996 #[prost(message, optional, tag = "1")]
997 pub value_field: ::core::option::Option<
998 super::super::super::super::common::ObservationField,
999 >,
1000 #[prost(message, repeated, tag = "2")]
1001 pub category_fields: ::prost::alloc::vec::Vec<
1002 super::super::super::super::common::ObservationField,
1003 >,
1004 #[prost(message, repeated, tag = "3")]
1005 pub sub_category_fields: ::prost::alloc::vec::Vec<
1006 super::super::super::super::common::ObservationField,
1007 >,
1008 #[prost(message, optional, tag = "4")]
1009 pub max_bars_per_chart: ::core::option::Option<i32>,
1010 #[prost(message, optional, tag = "5")]
1011 pub max_slices_per_bar: ::core::option::Option<i32>,
1012 #[prost(message, optional, tag = "6")]
1013 pub stack_name_template: ::core::option::Option<
1014 ::prost::alloc::string::String,
1015 >,
1016 #[prost(enumeration = "super::super::common::ScaleType", tag = "7")]
1017 pub scale_type: i32,
1018 #[prost(message, optional, tag = "8")]
1019 pub colors_by: ::core::option::Option<super::super::common::ColorsBy>,
1020 #[prost(message, optional, tag = "9")]
1021 pub color_scheme: ::core::option::Option<::prost::alloc::string::String>,
1022 #[prost(message, optional, tag = "10")]
1023 pub hash_colors: ::core::option::Option<bool>,
1024 #[prost(enumeration = "super::super::common::Unit", tag = "11")]
1025 pub unit: i32,
1026 #[prost(message, optional, tag = "12")]
1027 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
1028 #[prost(message, optional, tag = "13")]
1029 pub display_on_bar: ::core::option::Option<bool>,
1030 #[prost(message, optional, tag = "14")]
1031 pub decimal_precision: ::core::option::Option<i32>,
1032 #[prost(message, optional, tag = "15")]
1033 pub allow_abbreviation: ::core::option::Option<bool>,
1034 #[prost(message, optional, tag = "16")]
1035 pub y_axis_min: ::core::option::Option<f32>,
1036 #[prost(message, optional, tag = "17")]
1037 pub y_axis_max: ::core::option::Option<f32>,
1038 #[prost(message, optional, tag = "18")]
1039 pub legend: ::core::option::Option<super::super::common::Legend>,
1040 #[prost(enumeration = "super::super::common::SortByType", tag = "19")]
1041 pub sort_by: i32,
1042 }
1043 #[derive(serde::Serialize, serde::Deserialize)]
1044 #[serde(rename_all = "snake_case")]
1045 #[derive(Clone, PartialEq, ::prost::Message)]
1046 pub struct VerticalBars {
1047 #[prost(message, optional, tag = "1")]
1048 pub value_field: ::core::option::Option<
1049 super::super::super::super::common::ObservationField,
1050 >,
1051 #[prost(message, repeated, tag = "2")]
1052 pub category_fields: ::prost::alloc::vec::Vec<
1053 super::super::super::super::common::ObservationField,
1054 >,
1055 #[prost(message, repeated, tag = "3")]
1056 pub sub_category_fields: ::prost::alloc::vec::Vec<
1057 super::super::super::super::common::ObservationField,
1058 >,
1059 #[prost(message, optional, tag = "4")]
1060 pub max_bars_per_chart: ::core::option::Option<i32>,
1061 #[prost(message, optional, tag = "5")]
1062 pub max_slices_per_bar: ::core::option::Option<i32>,
1063 #[prost(message, optional, tag = "6")]
1064 pub stack_name_template: ::core::option::Option<
1065 ::prost::alloc::string::String,
1066 >,
1067 #[prost(enumeration = "super::super::common::ScaleType", tag = "7")]
1068 pub scale_type: i32,
1069 #[prost(message, optional, tag = "8")]
1070 pub colors_by: ::core::option::Option<super::super::common::ColorsBy>,
1071 #[prost(message, optional, tag = "9")]
1072 pub color_scheme: ::core::option::Option<::prost::alloc::string::String>,
1073 #[prost(message, optional, tag = "10")]
1074 pub hash_colors: ::core::option::Option<bool>,
1075 #[prost(enumeration = "super::super::common::Unit", tag = "11")]
1076 pub unit: i32,
1077 #[prost(message, optional, tag = "12")]
1078 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
1079 #[prost(enumeration = "BarValueDisplay", tag = "13")]
1080 pub bar_value_display: i32,
1081 #[prost(message, optional, tag = "14")]
1082 pub decimal_precision: ::core::option::Option<i32>,
1083 #[prost(message, optional, tag = "15")]
1084 pub allow_abbreviation: ::core::option::Option<bool>,
1085 #[prost(message, optional, tag = "16")]
1086 pub y_axis_min: ::core::option::Option<f32>,
1087 #[prost(message, optional, tag = "17")]
1088 pub y_axis_max: ::core::option::Option<f32>,
1089 #[prost(message, optional, tag = "18")]
1090 pub legend: ::core::option::Option<super::super::common::Legend>,
1091 #[prost(enumeration = "super::super::common::SortByType", tag = "19")]
1092 pub sort_by: i32,
1093 }
1094 #[derive(serde::Serialize, serde::Deserialize)]
1095 #[serde(rename_all = "snake_case")]
1096 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
1097 pub struct TimeSeriesTooltip {
1098 #[prost(message, optional, tag = "1")]
1099 pub show_all_series: ::core::option::Option<bool>,
1100 #[prost(message, optional, tag = "2")]
1101 pub show_labels: ::core::option::Option<bool>,
1102 }
1103 #[derive(serde::Serialize, serde::Deserialize)]
1104 #[serde(rename_all = "snake_case")]
1105 #[derive(
1106 Clone,
1107 Copy,
1108 Debug,
1109 PartialEq,
1110 Eq,
1111 Hash,
1112 PartialOrd,
1113 Ord,
1114 ::prost::Enumeration
1115 )]
1116 #[repr(i32)]
1117 pub enum BarValueDisplay {
1118 Unspecified = 0,
1119 Top = 1,
1120 Inside = 2,
1121 Both = 3,
1122 }
1123 impl BarValueDisplay {
1124 pub fn as_str_name(&self) -> &'static str {
1129 match self {
1130 Self::Unspecified => "BAR_VALUE_DISPLAY_UNSPECIFIED",
1131 Self::Top => "BAR_VALUE_DISPLAY_TOP",
1132 Self::Inside => "BAR_VALUE_DISPLAY_INSIDE",
1133 Self::Both => "BAR_VALUE_DISPLAY_BOTH",
1134 }
1135 }
1136 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1138 match value {
1139 "BAR_VALUE_DISPLAY_UNSPECIFIED" => Some(Self::Unspecified),
1140 "BAR_VALUE_DISPLAY_TOP" => Some(Self::Top),
1141 "BAR_VALUE_DISPLAY_INSIDE" => Some(Self::Inside),
1142 "BAR_VALUE_DISPLAY_BOTH" => Some(Self::Both),
1143 _ => None,
1144 }
1145 }
1146 }
1147 #[derive(serde::Serialize, serde::Deserialize)]
1148 #[serde(rename_all = "snake_case")]
1149 #[derive(Clone, PartialEq, ::prost::Oneof)]
1150 pub enum Value {
1151 #[prost(message, tag = "1")]
1152 Table(Table),
1153 #[prost(message, tag = "2")]
1154 TimeSeriesLines(TimeSeriesLines),
1155 #[prost(message, tag = "3")]
1156 TimeSeriesBars(TimeSeriesBars),
1157 #[prost(message, tag = "4")]
1158 Stat(Stat),
1159 #[prost(message, tag = "5")]
1160 Gauge(Gauge),
1161 #[prost(message, tag = "6")]
1162 HexagonBins(HexagonBins),
1163 #[prost(message, tag = "7")]
1164 PieChart(PieChart),
1165 #[prost(message, tag = "8")]
1166 HorizontalBars(HorizontalBars),
1167 #[prost(message, tag = "9")]
1168 VerticalBars(VerticalBars),
1169 }
1170 }
1171 #[derive(serde::Serialize, serde::Deserialize)]
1172 #[serde(rename_all = "snake_case")]
1173 #[derive(
1174 Clone,
1175 Copy,
1176 Debug,
1177 PartialEq,
1178 Eq,
1179 Hash,
1180 PartialOrd,
1181 Ord,
1182 ::prost::Enumeration
1183 )]
1184 #[repr(i32)]
1185 pub enum Interpretation {
1186 Unspecified = 0,
1187 RawDataTable = 1,
1188 TrendOverTimeLine = 2,
1189 SingleValueKpi = 3,
1190 MultiValueKpi = 4,
1191 CategoricalAnalysisVerticalBars = 5,
1192 SingleValueKpiStat = 6,
1193 SingleValueKpiGauge = 7,
1194 MultiValueKpiStat = 8,
1195 MultiValueKpiGauge = 9,
1196 MultiValueKpiHexagonBins = 10,
1197 CategoricalAnalysisPieChart = 11,
1198 CategoricalAnalysisHorizontalBars = 12,
1199 }
1200 impl Interpretation {
1201 pub fn as_str_name(&self) -> &'static str {
1206 match self {
1207 Self::Unspecified => "INTERPRETATION_UNSPECIFIED",
1208 Self::RawDataTable => "INTERPRETATION_RAW_DATA_TABLE",
1209 Self::TrendOverTimeLine => "INTERPRETATION_TREND_OVER_TIME_LINE",
1210 Self::SingleValueKpi => "INTERPRETATION_SINGLE_VALUE_KPI",
1211 Self::MultiValueKpi => "INTERPRETATION_MULTI_VALUE_KPI",
1212 Self::CategoricalAnalysisVerticalBars => {
1213 "INTERPRETATION_CATEGORICAL_ANALYSIS_VERTICAL_BARS"
1214 }
1215 Self::SingleValueKpiStat => "INTERPRETATION_SINGLE_VALUE_KPI_STAT",
1216 Self::SingleValueKpiGauge => "INTERPRETATION_SINGLE_VALUE_KPI_GAUGE",
1217 Self::MultiValueKpiStat => "INTERPRETATION_MULTI_VALUE_KPI_STAT",
1218 Self::MultiValueKpiGauge => "INTERPRETATION_MULTI_VALUE_KPI_GAUGE",
1219 Self::MultiValueKpiHexagonBins => {
1220 "INTERPRETATION_MULTI_VALUE_KPI_HEXAGON_BINS"
1221 }
1222 Self::CategoricalAnalysisPieChart => {
1223 "INTERPRETATION_CATEGORICAL_ANALYSIS_PIE_CHART"
1224 }
1225 Self::CategoricalAnalysisHorizontalBars => {
1226 "INTERPRETATION_CATEGORICAL_ANALYSIS_HORIZONTAL_BARS"
1227 }
1228 }
1229 }
1230 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1232 match value {
1233 "INTERPRETATION_UNSPECIFIED" => Some(Self::Unspecified),
1234 "INTERPRETATION_RAW_DATA_TABLE" => Some(Self::RawDataTable),
1235 "INTERPRETATION_TREND_OVER_TIME_LINE" => Some(Self::TrendOverTimeLine),
1236 "INTERPRETATION_SINGLE_VALUE_KPI" => Some(Self::SingleValueKpi),
1237 "INTERPRETATION_MULTI_VALUE_KPI" => Some(Self::MultiValueKpi),
1238 "INTERPRETATION_CATEGORICAL_ANALYSIS_VERTICAL_BARS" => {
1239 Some(Self::CategoricalAnalysisVerticalBars)
1240 }
1241 "INTERPRETATION_SINGLE_VALUE_KPI_STAT" => Some(Self::SingleValueKpiStat),
1242 "INTERPRETATION_SINGLE_VALUE_KPI_GAUGE" => {
1243 Some(Self::SingleValueKpiGauge)
1244 }
1245 "INTERPRETATION_MULTI_VALUE_KPI_STAT" => Some(Self::MultiValueKpiStat),
1246 "INTERPRETATION_MULTI_VALUE_KPI_GAUGE" => Some(Self::MultiValueKpiGauge),
1247 "INTERPRETATION_MULTI_VALUE_KPI_HEXAGON_BINS" => {
1248 Some(Self::MultiValueKpiHexagonBins)
1249 }
1250 "INTERPRETATION_CATEGORICAL_ANALYSIS_PIE_CHART" => {
1251 Some(Self::CategoricalAnalysisPieChart)
1252 }
1253 "INTERPRETATION_CATEGORICAL_ANALYSIS_HORIZONTAL_BARS" => {
1254 Some(Self::CategoricalAnalysisHorizontalBars)
1255 }
1256 _ => None,
1257 }
1258 }
1259 }
1260}
1261#[derive(serde::Serialize, serde::Deserialize)]
1262#[serde(rename_all = "snake_case")]
1263#[derive(Clone, PartialEq, ::prost::Message)]
1264pub struct Gauge {
1265 #[prost(message, optional, tag = "1")]
1266 pub query: ::core::option::Option<gauge::Query>,
1267 #[prost(message, optional, tag = "2")]
1268 pub min: ::core::option::Option<f64>,
1269 #[prost(message, optional, tag = "3")]
1270 pub max: ::core::option::Option<f64>,
1271 #[prost(message, optional, tag = "4")]
1272 pub show_inner_arc: ::core::option::Option<bool>,
1273 #[prost(message, optional, tag = "5")]
1274 pub show_outer_arc: ::core::option::Option<bool>,
1275 #[prost(enumeration = "gauge::Unit", tag = "6")]
1276 pub unit: i32,
1277 #[prost(message, repeated, tag = "7")]
1278 pub thresholds: ::prost::alloc::vec::Vec<gauge::Threshold>,
1279 #[prost(enumeration = "common::DataModeType", tag = "8")]
1280 pub data_mode_type: i32,
1281 #[prost(enumeration = "gauge::ThresholdBy", tag = "9")]
1282 pub threshold_by: i32,
1283 #[prost(message, optional, tag = "10")]
1284 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
1285 #[prost(message, optional, tag = "11")]
1286 pub decimal: ::core::option::Option<i32>,
1287 #[prost(enumeration = "common::ThresholdType", tag = "12")]
1288 pub threshold_type: i32,
1289 #[prost(message, optional, tag = "13")]
1290 pub legend: ::core::option::Option<common::Legend>,
1291 #[prost(enumeration = "common::LegendBy", tag = "14")]
1292 pub legend_by: i32,
1293 #[prost(message, optional, tag = "15")]
1294 pub display_series_name: ::core::option::Option<bool>,
1295 #[prost(message, optional, tag = "16")]
1296 pub decimal_precision: ::core::option::Option<bool>,
1297}
1298pub mod gauge {
1300 #[derive(serde::Serialize, serde::Deserialize)]
1301 #[serde(rename_all = "snake_case")]
1302 #[derive(Clone, PartialEq, ::prost::Message)]
1303 pub struct Query {
1304 #[prost(oneof = "query::Value", tags = "1, 2, 3, 4")]
1305 pub value: ::core::option::Option<query::Value>,
1306 }
1307 pub mod query {
1309 #[derive(serde::Serialize, serde::Deserialize)]
1310 #[serde(rename_all = "snake_case")]
1311 #[derive(Clone, PartialEq, ::prost::Oneof)]
1312 pub enum Value {
1313 #[prost(message, tag = "1")]
1314 Metrics(super::MetricsQuery),
1315 #[prost(message, tag = "2")]
1316 Logs(super::LogsQuery),
1317 #[prost(message, tag = "3")]
1318 Spans(super::SpansQuery),
1319 #[prost(message, tag = "4")]
1320 Dataprime(super::DataprimeQuery),
1321 }
1322 }
1323 #[derive(serde::Serialize, serde::Deserialize)]
1324 #[serde(rename_all = "snake_case")]
1325 #[derive(Clone, PartialEq, ::prost::Message)]
1326 pub struct MetricsQuery {
1327 #[prost(message, optional, tag = "1")]
1328 pub promql_query: ::core::option::Option<
1329 super::super::super::common::PromQlQuery,
1330 >,
1331 #[prost(enumeration = "Aggregation", tag = "2")]
1332 pub aggregation: i32,
1333 #[prost(message, repeated, tag = "3")]
1334 pub filters: ::prost::alloc::vec::Vec<
1335 super::super::filters::filter::MetricsFilter,
1336 >,
1337 #[prost(enumeration = "super::common::MetricsQueryEditorMode", tag = "4")]
1338 pub editor_mode: i32,
1339 #[prost(message, optional, tag = "5")]
1340 pub time_frame: ::core::option::Option<
1341 super::super::super::common::TimeFrameSelect,
1342 >,
1343 #[prost(enumeration = "super::super::super::common::PromQlQueryType", tag = "6")]
1344 pub promql_query_type: i32,
1345 }
1346 #[derive(serde::Serialize, serde::Deserialize)]
1347 #[serde(rename_all = "snake_case")]
1348 #[derive(Clone, PartialEq, ::prost::Message)]
1349 pub struct LogsQuery {
1350 #[prost(message, optional, tag = "1")]
1351 pub lucene_query: ::core::option::Option<
1352 super::super::super::common::LuceneQuery,
1353 >,
1354 #[prost(message, optional, tag = "2")]
1355 pub logs_aggregation: ::core::option::Option<
1356 super::super::super::common::LogsAggregation,
1357 >,
1358 #[deprecated]
1359 #[prost(enumeration = "Aggregation", tag = "3")]
1360 pub aggregation: i32,
1361 #[prost(message, repeated, tag = "4")]
1362 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::LogsFilter>,
1363 #[prost(message, repeated, tag = "5")]
1364 pub group_by: ::prost::alloc::vec::Vec<
1365 super::super::super::common::ObservationField,
1366 >,
1367 #[prost(message, optional, tag = "6")]
1368 pub time_frame: ::core::option::Option<
1369 super::super::super::common::TimeFrameSelect,
1370 >,
1371 }
1372 #[derive(serde::Serialize, serde::Deserialize)]
1373 #[serde(rename_all = "snake_case")]
1374 #[derive(Clone, PartialEq, ::prost::Message)]
1375 pub struct SpansQuery {
1376 #[prost(message, optional, tag = "1")]
1377 pub lucene_query: ::core::option::Option<
1378 super::super::super::common::LuceneQuery,
1379 >,
1380 #[prost(message, optional, tag = "2")]
1381 pub spans_aggregation: ::core::option::Option<
1382 super::super::super::common::SpansAggregation,
1383 >,
1384 #[deprecated]
1385 #[prost(enumeration = "Aggregation", tag = "3")]
1386 pub aggregation: i32,
1387 #[prost(message, repeated, tag = "4")]
1388 pub filters: ::prost::alloc::vec::Vec<
1389 super::super::filters::filter::SpansFilter,
1390 >,
1391 #[prost(message, repeated, tag = "5")]
1392 pub group_by: ::prost::alloc::vec::Vec<super::super::super::common::SpanField>,
1393 #[prost(message, optional, tag = "6")]
1394 pub time_frame: ::core::option::Option<
1395 super::super::super::common::TimeFrameSelect,
1396 >,
1397 #[prost(message, repeated, tag = "7")]
1398 pub group_bys: ::prost::alloc::vec::Vec<
1399 super::super::super::common::SpanObservationField,
1400 >,
1401 }
1402 #[derive(serde::Serialize, serde::Deserialize)]
1403 #[serde(rename_all = "snake_case")]
1404 #[derive(Clone, PartialEq, ::prost::Message)]
1405 pub struct DataprimeQuery {
1406 #[prost(message, optional, tag = "1")]
1407 pub dataprime_query: ::core::option::Option<
1408 super::super::super::common::DataprimeQuery,
1409 >,
1410 #[prost(message, repeated, tag = "2")]
1411 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::Source>,
1412 #[prost(message, optional, tag = "3")]
1413 pub time_frame: ::core::option::Option<
1414 super::super::super::common::TimeFrameSelect,
1415 >,
1416 }
1417 #[derive(serde::Serialize, serde::Deserialize)]
1418 #[serde(rename_all = "snake_case")]
1419 #[derive(Clone, PartialEq, ::prost::Message)]
1420 pub struct Threshold {
1421 #[prost(message, optional, tag = "1")]
1422 pub from: ::core::option::Option<f64>,
1423 #[prost(message, optional, tag = "2")]
1424 pub color: ::core::option::Option<::prost::alloc::string::String>,
1425 #[prost(message, optional, tag = "3")]
1426 pub label: ::core::option::Option<::prost::alloc::string::String>,
1427 }
1428 #[derive(serde::Serialize, serde::Deserialize)]
1429 #[serde(rename_all = "snake_case")]
1430 #[derive(
1431 Clone,
1432 Copy,
1433 Debug,
1434 PartialEq,
1435 Eq,
1436 Hash,
1437 PartialOrd,
1438 Ord,
1439 ::prost::Enumeration
1440 )]
1441 #[repr(i32)]
1442 pub enum Aggregation {
1443 Unspecified = 0,
1444 Last = 1,
1445 Min = 2,
1446 Max = 3,
1447 Avg = 4,
1448 Sum = 5,
1449 }
1450 impl Aggregation {
1451 pub fn as_str_name(&self) -> &'static str {
1456 match self {
1457 Self::Unspecified => "AGGREGATION_UNSPECIFIED",
1458 Self::Last => "AGGREGATION_LAST",
1459 Self::Min => "AGGREGATION_MIN",
1460 Self::Max => "AGGREGATION_MAX",
1461 Self::Avg => "AGGREGATION_AVG",
1462 Self::Sum => "AGGREGATION_SUM",
1463 }
1464 }
1465 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1467 match value {
1468 "AGGREGATION_UNSPECIFIED" => Some(Self::Unspecified),
1469 "AGGREGATION_LAST" => Some(Self::Last),
1470 "AGGREGATION_MIN" => Some(Self::Min),
1471 "AGGREGATION_MAX" => Some(Self::Max),
1472 "AGGREGATION_AVG" => Some(Self::Avg),
1473 "AGGREGATION_SUM" => Some(Self::Sum),
1474 _ => None,
1475 }
1476 }
1477 }
1478 #[derive(serde::Serialize, serde::Deserialize)]
1479 #[serde(rename_all = "snake_case")]
1480 #[derive(
1481 Clone,
1482 Copy,
1483 Debug,
1484 PartialEq,
1485 Eq,
1486 Hash,
1487 PartialOrd,
1488 Ord,
1489 ::prost::Enumeration
1490 )]
1491 #[repr(i32)]
1492 pub enum Unit {
1493 Unspecified = 0,
1494 Number = 1,
1495 Percent = 2,
1496 Microseconds = 3,
1497 Milliseconds = 4,
1498 Seconds = 5,
1499 Bytes = 6,
1500 Kbytes = 7,
1501 Mbytes = 8,
1502 Gbytes = 9,
1503 BytesIec = 10,
1504 Kibytes = 11,
1505 Mibytes = 12,
1506 Gibytes = 13,
1507 EurCents = 14,
1508 Eur = 15,
1509 UsdCents = 16,
1510 Usd = 17,
1511 Custom = 18,
1512 PercentZeroOne = 19,
1513 PercentZeroHundred = 20,
1514 Nanoseconds = 21,
1515 }
1516 impl Unit {
1517 pub fn as_str_name(&self) -> &'static str {
1522 match self {
1523 Self::Unspecified => "UNIT_UNSPECIFIED",
1524 Self::Number => "UNIT_NUMBER",
1525 Self::Percent => "UNIT_PERCENT",
1526 Self::Microseconds => "UNIT_MICROSECONDS",
1527 Self::Milliseconds => "UNIT_MILLISECONDS",
1528 Self::Seconds => "UNIT_SECONDS",
1529 Self::Bytes => "UNIT_BYTES",
1530 Self::Kbytes => "UNIT_KBYTES",
1531 Self::Mbytes => "UNIT_MBYTES",
1532 Self::Gbytes => "UNIT_GBYTES",
1533 Self::BytesIec => "UNIT_BYTES_IEC",
1534 Self::Kibytes => "UNIT_KIBYTES",
1535 Self::Mibytes => "UNIT_MIBYTES",
1536 Self::Gibytes => "UNIT_GIBYTES",
1537 Self::EurCents => "UNIT_EUR_CENTS",
1538 Self::Eur => "UNIT_EUR",
1539 Self::UsdCents => "UNIT_USD_CENTS",
1540 Self::Usd => "UNIT_USD",
1541 Self::Custom => "UNIT_CUSTOM",
1542 Self::PercentZeroOne => "UNIT_PERCENT_ZERO_ONE",
1543 Self::PercentZeroHundred => "UNIT_PERCENT_ZERO_HUNDRED",
1544 Self::Nanoseconds => "UNIT_NANOSECONDS",
1545 }
1546 }
1547 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1549 match value {
1550 "UNIT_UNSPECIFIED" => Some(Self::Unspecified),
1551 "UNIT_NUMBER" => Some(Self::Number),
1552 "UNIT_PERCENT" => Some(Self::Percent),
1553 "UNIT_MICROSECONDS" => Some(Self::Microseconds),
1554 "UNIT_MILLISECONDS" => Some(Self::Milliseconds),
1555 "UNIT_SECONDS" => Some(Self::Seconds),
1556 "UNIT_BYTES" => Some(Self::Bytes),
1557 "UNIT_KBYTES" => Some(Self::Kbytes),
1558 "UNIT_MBYTES" => Some(Self::Mbytes),
1559 "UNIT_GBYTES" => Some(Self::Gbytes),
1560 "UNIT_BYTES_IEC" => Some(Self::BytesIec),
1561 "UNIT_KIBYTES" => Some(Self::Kibytes),
1562 "UNIT_MIBYTES" => Some(Self::Mibytes),
1563 "UNIT_GIBYTES" => Some(Self::Gibytes),
1564 "UNIT_EUR_CENTS" => Some(Self::EurCents),
1565 "UNIT_EUR" => Some(Self::Eur),
1566 "UNIT_USD_CENTS" => Some(Self::UsdCents),
1567 "UNIT_USD" => Some(Self::Usd),
1568 "UNIT_CUSTOM" => Some(Self::Custom),
1569 "UNIT_PERCENT_ZERO_ONE" => Some(Self::PercentZeroOne),
1570 "UNIT_PERCENT_ZERO_HUNDRED" => Some(Self::PercentZeroHundred),
1571 "UNIT_NANOSECONDS" => Some(Self::Nanoseconds),
1572 _ => None,
1573 }
1574 }
1575 }
1576 #[derive(serde::Serialize, serde::Deserialize)]
1577 #[serde(rename_all = "snake_case")]
1578 #[derive(
1579 Clone,
1580 Copy,
1581 Debug,
1582 PartialEq,
1583 Eq,
1584 Hash,
1585 PartialOrd,
1586 Ord,
1587 ::prost::Enumeration
1588 )]
1589 #[repr(i32)]
1590 pub enum ThresholdBy {
1591 Unspecified = 0,
1592 Value = 1,
1593 Background = 2,
1594 }
1595 impl ThresholdBy {
1596 pub fn as_str_name(&self) -> &'static str {
1601 match self {
1602 Self::Unspecified => "THRESHOLD_BY_UNSPECIFIED",
1603 Self::Value => "THRESHOLD_BY_VALUE",
1604 Self::Background => "THRESHOLD_BY_BACKGROUND",
1605 }
1606 }
1607 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
1609 match value {
1610 "THRESHOLD_BY_UNSPECIFIED" => Some(Self::Unspecified),
1611 "THRESHOLD_BY_VALUE" => Some(Self::Value),
1612 "THRESHOLD_BY_BACKGROUND" => Some(Self::Background),
1613 _ => None,
1614 }
1615 }
1616 }
1617}
1618#[derive(serde::Serialize, serde::Deserialize)]
1619#[serde(rename_all = "snake_case")]
1620#[derive(Clone, PartialEq, ::prost::Message)]
1621pub struct Hexagon {
1622 #[prost(message, optional, tag = "1")]
1623 pub query: ::core::option::Option<hexagon::Query>,
1624 #[prost(message, optional, tag = "2")]
1625 pub min: ::core::option::Option<f64>,
1626 #[prost(message, optional, tag = "3")]
1627 pub max: ::core::option::Option<f64>,
1628 #[prost(enumeration = "common::Unit", tag = "6")]
1629 pub unit: i32,
1630 #[prost(message, repeated, tag = "7")]
1631 pub thresholds: ::prost::alloc::vec::Vec<common::Threshold>,
1632 #[prost(enumeration = "common::DataModeType", tag = "8")]
1633 pub data_mode_type: i32,
1634 #[prost(message, optional, tag = "10")]
1635 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
1636 #[prost(message, optional, tag = "11")]
1637 pub decimal: ::core::option::Option<i32>,
1638 #[prost(enumeration = "common::ThresholdType", tag = "12")]
1639 pub threshold_type: i32,
1640 #[prost(message, optional, tag = "13")]
1641 pub legend: ::core::option::Option<common::Legend>,
1642 #[prost(enumeration = "common::LegendBy", tag = "14")]
1643 pub legend_by: i32,
1644 #[prost(message, optional, tag = "15")]
1645 pub decimal_precision: ::core::option::Option<bool>,
1646}
1647pub mod hexagon {
1649 #[derive(serde::Serialize, serde::Deserialize)]
1650 #[serde(rename_all = "snake_case")]
1651 #[derive(Clone, PartialEq, ::prost::Message)]
1652 pub struct Query {
1653 #[prost(oneof = "query::Value", tags = "1, 2, 3, 4")]
1654 pub value: ::core::option::Option<query::Value>,
1655 }
1656 pub mod query {
1658 #[derive(serde::Serialize, serde::Deserialize)]
1659 #[serde(rename_all = "snake_case")]
1660 #[derive(Clone, PartialEq, ::prost::Oneof)]
1661 pub enum Value {
1662 #[prost(message, tag = "1")]
1663 Metrics(super::MetricsQuery),
1664 #[prost(message, tag = "2")]
1665 Logs(super::LogsQuery),
1666 #[prost(message, tag = "3")]
1667 Spans(super::SpansQuery),
1668 #[prost(message, tag = "4")]
1669 Dataprime(super::DataprimeQuery),
1670 }
1671 }
1672 #[derive(serde::Serialize, serde::Deserialize)]
1673 #[serde(rename_all = "snake_case")]
1674 #[derive(Clone, PartialEq, ::prost::Message)]
1675 pub struct MetricsQuery {
1676 #[prost(message, optional, tag = "1")]
1677 pub promql_query: ::core::option::Option<
1678 super::super::super::common::PromQlQuery,
1679 >,
1680 #[prost(message, repeated, tag = "2")]
1681 pub filters: ::prost::alloc::vec::Vec<
1682 super::super::filters::filter::MetricsFilter,
1683 >,
1684 #[prost(enumeration = "super::common::MetricsQueryEditorMode", tag = "3")]
1685 pub editor_mode: i32,
1686 #[prost(message, optional, tag = "4")]
1687 pub time_frame: ::core::option::Option<
1688 super::super::super::common::TimeFrameSelect,
1689 >,
1690 #[prost(enumeration = "super::common::Aggregation", tag = "5")]
1691 pub aggregation: i32,
1692 #[prost(enumeration = "super::super::super::common::PromQlQueryType", tag = "6")]
1693 pub promql_query_type: i32,
1694 }
1695 #[derive(serde::Serialize, serde::Deserialize)]
1696 #[serde(rename_all = "snake_case")]
1697 #[derive(Clone, PartialEq, ::prost::Message)]
1698 pub struct LogsQuery {
1699 #[prost(message, optional, tag = "1")]
1700 pub lucene_query: ::core::option::Option<
1701 super::super::super::common::LuceneQuery,
1702 >,
1703 #[prost(message, optional, tag = "2")]
1704 pub logs_aggregation: ::core::option::Option<
1705 super::super::super::common::LogsAggregation,
1706 >,
1707 #[prost(message, repeated, tag = "3")]
1708 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::LogsFilter>,
1709 #[prost(message, repeated, tag = "4")]
1710 pub group_by: ::prost::alloc::vec::Vec<
1711 super::super::super::common::ObservationField,
1712 >,
1713 #[prost(message, optional, tag = "5")]
1714 pub time_frame: ::core::option::Option<
1715 super::super::super::common::TimeFrameSelect,
1716 >,
1717 }
1718 #[derive(serde::Serialize, serde::Deserialize)]
1719 #[serde(rename_all = "snake_case")]
1720 #[derive(Clone, PartialEq, ::prost::Message)]
1721 pub struct SpansQuery {
1722 #[prost(message, optional, tag = "1")]
1723 pub lucene_query: ::core::option::Option<
1724 super::super::super::common::LuceneQuery,
1725 >,
1726 #[prost(message, optional, tag = "2")]
1727 pub spans_aggregation: ::core::option::Option<
1728 super::super::super::common::SpansAggregation,
1729 >,
1730 #[prost(message, repeated, tag = "3")]
1731 pub filters: ::prost::alloc::vec::Vec<
1732 super::super::filters::filter::SpansFilter,
1733 >,
1734 #[prost(message, repeated, tag = "4")]
1735 pub group_by: ::prost::alloc::vec::Vec<super::super::super::common::SpanField>,
1736 #[prost(message, optional, tag = "5")]
1737 pub time_frame: ::core::option::Option<
1738 super::super::super::common::TimeFrameSelect,
1739 >,
1740 #[prost(message, repeated, tag = "6")]
1741 pub group_bys: ::prost::alloc::vec::Vec<
1742 super::super::super::common::SpanObservationField,
1743 >,
1744 }
1745 #[derive(serde::Serialize, serde::Deserialize)]
1746 #[serde(rename_all = "snake_case")]
1747 #[derive(Clone, PartialEq, ::prost::Message)]
1748 pub struct DataprimeQuery {
1749 #[prost(message, optional, tag = "1")]
1750 pub dataprime_query: ::core::option::Option<
1751 super::super::super::common::DataprimeQuery,
1752 >,
1753 #[prost(message, repeated, tag = "2")]
1754 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::Source>,
1755 #[prost(message, optional, tag = "3")]
1756 pub time_frame: ::core::option::Option<
1757 super::super::super::common::TimeFrameSelect,
1758 >,
1759 }
1760}
1761#[derive(serde::Serialize, serde::Deserialize)]
1762#[serde(rename_all = "snake_case")]
1763#[derive(Clone, PartialEq, ::prost::Message)]
1764pub struct HorizontalBarChart {
1765 #[prost(message, optional, tag = "1")]
1766 pub query: ::core::option::Option<horizontal_bar_chart::Query>,
1767 #[prost(message, optional, tag = "2")]
1768 pub max_bars_per_chart: ::core::option::Option<i32>,
1769 #[prost(message, optional, tag = "3")]
1770 pub group_name_template: ::core::option::Option<::prost::alloc::string::String>,
1771 #[prost(message, optional, tag = "4")]
1772 pub stack_definition: ::core::option::Option<horizontal_bar_chart::StackDefinition>,
1773 #[prost(enumeration = "common::ScaleType", tag = "5")]
1774 pub scale_type: i32,
1775 #[prost(message, optional, tag = "6")]
1776 pub colors_by: ::core::option::Option<common::ColorsBy>,
1777 #[prost(enumeration = "common::Unit", tag = "8")]
1778 pub unit: i32,
1779 #[prost(message, optional, tag = "9")]
1780 pub display_on_bar: ::core::option::Option<bool>,
1781 #[prost(message, optional, tag = "10")]
1782 pub y_axis_view_by: ::core::option::Option<horizontal_bar_chart::YAxisViewBy>,
1783 #[prost(enumeration = "common::SortByType", tag = "11")]
1784 pub sort_by: i32,
1785 #[prost(message, optional, tag = "12")]
1786 pub color_scheme: ::core::option::Option<::prost::alloc::string::String>,
1787 #[prost(enumeration = "common::DataModeType", tag = "13")]
1788 pub data_mode_type: i32,
1789 #[prost(message, optional, tag = "14")]
1790 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
1791 #[prost(message, optional, tag = "15")]
1792 pub decimal: ::core::option::Option<i32>,
1793 #[prost(message, optional, tag = "16")]
1794 pub legend: ::core::option::Option<common::Legend>,
1795 #[prost(message, optional, tag = "17")]
1796 pub hash_colors: ::core::option::Option<bool>,
1797 #[prost(message, optional, tag = "18")]
1798 pub y_axis_min: ::core::option::Option<f32>,
1799 #[prost(message, optional, tag = "19")]
1800 pub y_axis_max: ::core::option::Option<f32>,
1801 #[prost(message, optional, tag = "20")]
1802 pub decimal_precision: ::core::option::Option<bool>,
1803}
1804pub mod horizontal_bar_chart {
1806 #[derive(serde::Serialize, serde::Deserialize)]
1807 #[serde(rename_all = "snake_case")]
1808 #[derive(Clone, PartialEq, ::prost::Message)]
1809 pub struct Query {
1810 #[prost(oneof = "query::Value", tags = "1, 2, 3, 4")]
1811 pub value: ::core::option::Option<query::Value>,
1812 }
1813 pub mod query {
1815 #[derive(serde::Serialize, serde::Deserialize)]
1816 #[serde(rename_all = "snake_case")]
1817 #[derive(Clone, PartialEq, ::prost::Oneof)]
1818 pub enum Value {
1819 #[prost(message, tag = "1")]
1820 Logs(super::LogsQuery),
1821 #[prost(message, tag = "2")]
1822 Spans(super::SpansQuery),
1823 #[prost(message, tag = "3")]
1824 Metrics(super::MetricsQuery),
1825 #[prost(message, tag = "4")]
1826 Dataprime(super::DataprimeQuery),
1827 }
1828 }
1829 #[derive(serde::Serialize, serde::Deserialize)]
1830 #[serde(rename_all = "snake_case")]
1831 #[derive(Clone, PartialEq, ::prost::Message)]
1832 pub struct StackDefinition {
1833 #[prost(message, optional, tag = "1")]
1834 pub max_slices_per_bar: ::core::option::Option<i32>,
1835 #[prost(message, optional, tag = "2")]
1836 pub stack_name_template: ::core::option::Option<::prost::alloc::string::String>,
1837 }
1838 #[derive(serde::Serialize, serde::Deserialize)]
1839 #[serde(rename_all = "snake_case")]
1840 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
1841 pub struct YAxisViewBy {
1842 #[prost(oneof = "y_axis_view_by::YAxisView", tags = "1, 2")]
1843 pub y_axis_view: ::core::option::Option<y_axis_view_by::YAxisView>,
1844 }
1845 pub mod y_axis_view_by {
1847 #[derive(serde::Serialize, serde::Deserialize)]
1848 #[serde(rename_all = "snake_case")]
1849 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
1850 pub struct YAxisViewByCategory {}
1851 #[derive(serde::Serialize, serde::Deserialize)]
1852 #[serde(rename_all = "snake_case")]
1853 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
1854 pub struct YAxisViewByValue {}
1855 #[derive(serde::Serialize, serde::Deserialize)]
1856 #[serde(rename_all = "snake_case")]
1857 #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
1858 pub enum YAxisView {
1859 #[prost(message, tag = "1")]
1860 Category(YAxisViewByCategory),
1861 #[prost(message, tag = "2")]
1862 Value(YAxisViewByValue),
1863 }
1864 }
1865 #[derive(serde::Serialize, serde::Deserialize)]
1866 #[serde(rename_all = "snake_case")]
1867 #[derive(Clone, PartialEq, ::prost::Message)]
1868 pub struct LogsQuery {
1869 #[prost(message, optional, tag = "1")]
1870 pub lucene_query: ::core::option::Option<
1871 super::super::super::common::LuceneQuery,
1872 >,
1873 #[prost(message, optional, tag = "2")]
1874 pub aggregation: ::core::option::Option<
1875 super::super::super::common::LogsAggregation,
1876 >,
1877 #[prost(message, repeated, tag = "3")]
1878 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::LogsFilter>,
1879 #[prost(message, repeated, tag = "4")]
1880 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1881 #[prost(message, optional, tag = "5")]
1882 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
1883 #[prost(message, repeated, tag = "6")]
1884 pub group_names_fields: ::prost::alloc::vec::Vec<
1885 super::super::super::common::ObservationField,
1886 >,
1887 #[prost(message, optional, tag = "7")]
1888 pub stacked_group_name_field: ::core::option::Option<
1889 super::super::super::common::ObservationField,
1890 >,
1891 #[prost(message, optional, tag = "8")]
1892 pub time_frame: ::core::option::Option<
1893 super::super::super::common::TimeFrameSelect,
1894 >,
1895 }
1896 #[derive(serde::Serialize, serde::Deserialize)]
1897 #[serde(rename_all = "snake_case")]
1898 #[derive(Clone, PartialEq, ::prost::Message)]
1899 pub struct SpansQuery {
1900 #[prost(message, optional, tag = "1")]
1901 pub lucene_query: ::core::option::Option<
1902 super::super::super::common::LuceneQuery,
1903 >,
1904 #[prost(message, optional, tag = "2")]
1905 pub aggregation: ::core::option::Option<
1906 super::super::super::common::SpansAggregation,
1907 >,
1908 #[prost(message, repeated, tag = "3")]
1909 pub filters: ::prost::alloc::vec::Vec<
1910 super::super::filters::filter::SpansFilter,
1911 >,
1912 #[prost(message, repeated, tag = "4")]
1913 pub group_names: ::prost::alloc::vec::Vec<
1914 super::super::super::common::SpanField,
1915 >,
1916 #[prost(message, optional, tag = "5")]
1917 pub stacked_group_name: ::core::option::Option<
1918 super::super::super::common::SpanField,
1919 >,
1920 #[prost(message, optional, tag = "6")]
1921 pub time_frame: ::core::option::Option<
1922 super::super::super::common::TimeFrameSelect,
1923 >,
1924 #[prost(message, repeated, tag = "7")]
1925 pub group_names_fields: ::prost::alloc::vec::Vec<
1926 super::super::super::common::SpanObservationField,
1927 >,
1928 #[prost(message, optional, tag = "8")]
1929 pub stacked_group_name_field: ::core::option::Option<
1930 super::super::super::common::SpanObservationField,
1931 >,
1932 }
1933 #[derive(serde::Serialize, serde::Deserialize)]
1934 #[serde(rename_all = "snake_case")]
1935 #[derive(Clone, PartialEq, ::prost::Message)]
1936 pub struct MetricsQuery {
1937 #[prost(message, optional, tag = "1")]
1938 pub promql_query: ::core::option::Option<
1939 super::super::super::common::PromQlQuery,
1940 >,
1941 #[prost(message, repeated, tag = "2")]
1942 pub filters: ::prost::alloc::vec::Vec<
1943 super::super::filters::filter::MetricsFilter,
1944 >,
1945 #[prost(message, repeated, tag = "3")]
1946 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1947 #[prost(message, optional, tag = "4")]
1948 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
1949 #[prost(enumeration = "super::common::MetricsQueryEditorMode", tag = "5")]
1950 pub editor_mode: i32,
1951 #[prost(message, optional, tag = "6")]
1952 pub time_frame: ::core::option::Option<
1953 super::super::super::common::TimeFrameSelect,
1954 >,
1955 #[prost(enumeration = "super::super::super::common::PromQlQueryType", tag = "7")]
1956 pub promql_query_type: i32,
1957 #[prost(enumeration = "super::common::Aggregation", tag = "8")]
1958 pub aggregation: i32,
1959 }
1960 #[derive(serde::Serialize, serde::Deserialize)]
1961 #[serde(rename_all = "snake_case")]
1962 #[derive(Clone, PartialEq, ::prost::Message)]
1963 pub struct DataprimeQuery {
1964 #[prost(message, optional, tag = "1")]
1965 pub dataprime_query: ::core::option::Option<
1966 super::super::super::common::DataprimeQuery,
1967 >,
1968 #[prost(message, repeated, tag = "2")]
1969 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::Source>,
1970 #[prost(message, repeated, tag = "3")]
1971 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
1972 #[prost(message, optional, tag = "4")]
1973 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
1974 #[prost(message, optional, tag = "5")]
1975 pub time_frame: ::core::option::Option<
1976 super::super::super::common::TimeFrameSelect,
1977 >,
1978 }
1979}
1980#[derive(serde::Serialize, serde::Deserialize)]
1981#[serde(rename_all = "snake_case")]
1982#[derive(Clone, PartialEq, ::prost::Message)]
1983pub struct LineChart {
1984 #[prost(message, optional, tag = "2")]
1985 pub legend: ::core::option::Option<common::Legend>,
1986 #[prost(message, optional, tag = "6")]
1987 pub tooltip: ::core::option::Option<line_chart::Tooltip>,
1988 #[prost(message, repeated, tag = "7")]
1989 pub query_definitions: ::prost::alloc::vec::Vec<line_chart::QueryDefinition>,
1990 #[prost(enumeration = "line_chart::StackedLine", tag = "9")]
1991 pub stacked_line: i32,
1992 #[prost(message, optional, tag = "10")]
1993 pub connect_nulls: ::core::option::Option<bool>,
1994}
1995pub mod line_chart {
1997 #[derive(serde::Serialize, serde::Deserialize)]
1998 #[serde(rename_all = "snake_case")]
1999 #[derive(Clone, PartialEq, ::prost::Message)]
2000 pub struct QueryDefinition {
2001 #[prost(message, optional, tag = "1")]
2002 pub id: ::core::option::Option<::prost::alloc::string::String>,
2003 #[prost(message, optional, tag = "2")]
2004 pub query: ::core::option::Option<Query>,
2005 #[prost(message, optional, tag = "3")]
2006 pub series_name_template: ::core::option::Option<::prost::alloc::string::String>,
2007 #[prost(message, optional, tag = "4")]
2008 pub series_count_limit: ::core::option::Option<i64>,
2009 #[prost(enumeration = "super::common::Unit", tag = "5")]
2010 pub unit: i32,
2011 #[prost(enumeration = "super::common::ScaleType", tag = "6")]
2012 pub scale_type: i32,
2013 #[prost(message, optional, tag = "7")]
2014 pub name: ::core::option::Option<::prost::alloc::string::String>,
2015 #[prost(message, optional, tag = "8")]
2016 pub is_visible: ::core::option::Option<bool>,
2017 #[prost(message, optional, tag = "9")]
2018 pub color_scheme: ::core::option::Option<::prost::alloc::string::String>,
2019 #[prost(message, optional, tag = "10")]
2020 pub resolution: ::core::option::Option<Resolution>,
2021 #[prost(enumeration = "super::common::DataModeType", tag = "11")]
2022 pub data_mode_type: i32,
2023 #[prost(message, optional, tag = "12")]
2024 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
2025 #[prost(message, optional, tag = "13")]
2026 pub decimal: ::core::option::Option<i32>,
2027 #[prost(message, optional, tag = "14")]
2028 pub hash_colors: ::core::option::Option<bool>,
2029 #[prost(message, optional, tag = "15")]
2030 pub y_axis_min: ::core::option::Option<f32>,
2031 #[prost(message, optional, tag = "16")]
2032 pub y_axis_max: ::core::option::Option<f32>,
2033 #[prost(message, optional, tag = "17")]
2034 pub decimal_precision: ::core::option::Option<bool>,
2035 }
2036 #[derive(serde::Serialize, serde::Deserialize)]
2037 #[serde(rename_all = "snake_case")]
2038 #[derive(Clone, PartialEq, ::prost::Message)]
2039 pub struct Query {
2040 #[prost(oneof = "query::Value", tags = "1, 2, 3, 5")]
2041 pub value: ::core::option::Option<query::Value>,
2042 }
2043 pub mod query {
2045 #[derive(serde::Serialize, serde::Deserialize)]
2046 #[serde(rename_all = "snake_case")]
2047 #[derive(Clone, PartialEq, ::prost::Oneof)]
2048 pub enum Value {
2049 #[prost(message, tag = "1")]
2050 Logs(super::LogsQuery),
2051 #[prost(message, tag = "2")]
2052 Metrics(super::MetricsQuery),
2053 #[prost(message, tag = "3")]
2054 Spans(super::SpansQuery),
2055 #[prost(message, tag = "5")]
2056 Dataprime(super::DataprimeQuery),
2057 }
2058 }
2059 #[derive(serde::Serialize, serde::Deserialize)]
2060 #[serde(rename_all = "snake_case")]
2061 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
2062 pub struct Tooltip {
2063 #[prost(message, optional, tag = "1")]
2064 pub show_labels: ::core::option::Option<bool>,
2065 #[prost(enumeration = "TooltipType", tag = "2")]
2066 pub r#type: i32,
2067 }
2068 #[derive(serde::Serialize, serde::Deserialize)]
2069 #[serde(rename_all = "snake_case")]
2070 #[derive(Clone, PartialEq, ::prost::Message)]
2071 pub struct LogsQuery {
2072 #[prost(message, optional, tag = "1")]
2073 pub lucene_query: ::core::option::Option<
2074 super::super::super::common::LuceneQuery,
2075 >,
2076 #[prost(message, repeated, tag = "2")]
2077 pub group_by: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
2078 #[prost(message, repeated, tag = "3")]
2079 pub aggregations: ::prost::alloc::vec::Vec<
2080 super::super::super::common::LogsAggregation,
2081 >,
2082 #[prost(message, repeated, tag = "4")]
2083 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::LogsFilter>,
2084 #[prost(message, repeated, tag = "5")]
2085 pub group_bys: ::prost::alloc::vec::Vec<
2086 super::super::super::common::ObservationField,
2087 >,
2088 #[prost(message, optional, tag = "6")]
2089 pub time_frame: ::core::option::Option<
2090 super::super::super::common::TimeFrameSelect,
2091 >,
2092 }
2093 #[derive(serde::Serialize, serde::Deserialize)]
2094 #[serde(rename_all = "snake_case")]
2095 #[derive(Clone, PartialEq, ::prost::Message)]
2096 pub struct MetricsQuery {
2097 #[prost(message, optional, tag = "1")]
2098 pub promql_query: ::core::option::Option<
2099 super::super::super::common::PromQlQuery,
2100 >,
2101 #[prost(message, repeated, tag = "2")]
2102 pub filters: ::prost::alloc::vec::Vec<
2103 super::super::filters::filter::MetricsFilter,
2104 >,
2105 #[prost(enumeration = "super::common::MetricsQueryEditorMode", tag = "3")]
2106 pub editor_mode: i32,
2107 #[prost(message, optional, tag = "4")]
2108 pub time_frame: ::core::option::Option<
2109 super::super::super::common::TimeFrameSelect,
2110 >,
2111 #[prost(
2112 enumeration = "super::super::super::common::MetricsSeriesLimitType",
2113 tag = "5"
2114 )]
2115 pub series_limit_type: i32,
2116 }
2117 #[derive(serde::Serialize, serde::Deserialize)]
2118 #[serde(rename_all = "snake_case")]
2119 #[derive(Clone, PartialEq, ::prost::Message)]
2120 pub struct SpansQuery {
2121 #[prost(message, optional, tag = "1")]
2122 pub lucene_query: ::core::option::Option<
2123 super::super::super::common::LuceneQuery,
2124 >,
2125 #[prost(message, repeated, tag = "2")]
2126 pub group_by: ::prost::alloc::vec::Vec<super::super::super::common::SpanField>,
2127 #[prost(message, repeated, tag = "3")]
2128 pub aggregations: ::prost::alloc::vec::Vec<
2129 super::super::super::common::SpansAggregation,
2130 >,
2131 #[prost(message, repeated, tag = "4")]
2132 pub filters: ::prost::alloc::vec::Vec<
2133 super::super::filters::filter::SpansFilter,
2134 >,
2135 #[prost(message, optional, tag = "5")]
2136 pub time_frame: ::core::option::Option<
2137 super::super::super::common::TimeFrameSelect,
2138 >,
2139 #[prost(message, repeated, tag = "6")]
2140 pub group_bys: ::prost::alloc::vec::Vec<
2141 super::super::super::common::SpanObservationField,
2142 >,
2143 }
2144 #[derive(serde::Serialize, serde::Deserialize)]
2145 #[serde(rename_all = "snake_case")]
2146 #[derive(Clone, PartialEq, ::prost::Message)]
2147 pub struct DataprimeQuery {
2148 #[prost(message, optional, tag = "1")]
2149 pub dataprime_query: ::core::option::Option<
2150 super::super::super::common::DataprimeQuery,
2151 >,
2152 #[prost(message, repeated, tag = "2")]
2153 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::Source>,
2154 #[prost(message, optional, tag = "3")]
2155 pub time_frame: ::core::option::Option<
2156 super::super::super::common::TimeFrameSelect,
2157 >,
2158 }
2159 #[derive(serde::Serialize, serde::Deserialize)]
2160 #[serde(rename_all = "snake_case")]
2161 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
2162 pub struct Resolution {
2163 #[prost(message, optional, tag = "1")]
2165 pub interval: ::core::option::Option<::prost_wkt_types::Duration>,
2166 #[prost(message, optional, tag = "2")]
2167 pub buckets_presented: ::core::option::Option<i32>,
2168 }
2169 #[derive(serde::Serialize, serde::Deserialize)]
2170 #[serde(rename_all = "snake_case")]
2171 #[derive(
2172 Clone,
2173 Copy,
2174 Debug,
2175 PartialEq,
2176 Eq,
2177 Hash,
2178 PartialOrd,
2179 Ord,
2180 ::prost::Enumeration
2181 )]
2182 #[repr(i32)]
2183 pub enum TooltipType {
2184 Unspecified = 0,
2185 All = 1,
2186 Single = 2,
2187 }
2188 impl TooltipType {
2189 pub fn as_str_name(&self) -> &'static str {
2194 match self {
2195 Self::Unspecified => "TOOLTIP_TYPE_UNSPECIFIED",
2196 Self::All => "TOOLTIP_TYPE_ALL",
2197 Self::Single => "TOOLTIP_TYPE_SINGLE",
2198 }
2199 }
2200 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
2202 match value {
2203 "TOOLTIP_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
2204 "TOOLTIP_TYPE_ALL" => Some(Self::All),
2205 "TOOLTIP_TYPE_SINGLE" => Some(Self::Single),
2206 _ => None,
2207 }
2208 }
2209 }
2210 #[derive(serde::Serialize, serde::Deserialize)]
2211 #[serde(rename_all = "snake_case")]
2212 #[derive(
2213 Clone,
2214 Copy,
2215 Debug,
2216 PartialEq,
2217 Eq,
2218 Hash,
2219 PartialOrd,
2220 Ord,
2221 ::prost::Enumeration
2222 )]
2223 #[repr(i32)]
2224 pub enum StackedLine {
2225 Unspecified = 0,
2226 Absolute = 1,
2227 Relative = 2,
2228 }
2229 impl StackedLine {
2230 pub fn as_str_name(&self) -> &'static str {
2235 match self {
2236 Self::Unspecified => "STACKED_LINE_UNSPECIFIED",
2237 Self::Absolute => "STACKED_LINE_ABSOLUTE",
2238 Self::Relative => "STACKED_LINE_RELATIVE",
2239 }
2240 }
2241 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
2243 match value {
2244 "STACKED_LINE_UNSPECIFIED" => Some(Self::Unspecified),
2245 "STACKED_LINE_ABSOLUTE" => Some(Self::Absolute),
2246 "STACKED_LINE_RELATIVE" => Some(Self::Relative),
2247 _ => None,
2248 }
2249 }
2250 }
2251}
2252#[derive(serde::Serialize, serde::Deserialize)]
2253#[serde(rename_all = "snake_case")]
2254#[derive(Clone, PartialEq, ::prost::Message)]
2255pub struct Markdown {
2256 #[prost(message, optional, tag = "1")]
2257 pub markdown_text: ::core::option::Option<::prost::alloc::string::String>,
2258 #[prost(message, optional, tag = "2")]
2259 pub tooltip_text: ::core::option::Option<::prost::alloc::string::String>,
2260}
2261#[derive(serde::Serialize, serde::Deserialize)]
2262#[serde(rename_all = "snake_case")]
2263#[derive(Clone, PartialEq, ::prost::Message)]
2264pub struct PieChart {
2265 #[prost(message, optional, tag = "1")]
2266 pub query: ::core::option::Option<pie_chart::Query>,
2267 #[prost(message, optional, tag = "2")]
2268 pub max_slices_per_chart: ::core::option::Option<i32>,
2269 #[prost(message, optional, tag = "3")]
2270 pub min_slice_percentage: ::core::option::Option<i32>,
2271 #[prost(message, optional, tag = "4")]
2272 pub stack_definition: ::core::option::Option<pie_chart::StackDefinition>,
2273 #[prost(message, optional, tag = "5")]
2274 pub label_definition: ::core::option::Option<pie_chart::LabelDefinition>,
2275 #[prost(message, optional, tag = "6")]
2277 pub show_legend: ::core::option::Option<bool>,
2278 #[prost(message, optional, tag = "7")]
2279 pub group_name_template: ::core::option::Option<::prost::alloc::string::String>,
2280 #[prost(enumeration = "common::Unit", tag = "8")]
2281 pub unit: i32,
2282 #[prost(message, optional, tag = "9")]
2283 pub color_scheme: ::core::option::Option<::prost::alloc::string::String>,
2284 #[prost(enumeration = "common::DataModeType", tag = "10")]
2285 pub data_mode_type: i32,
2286 #[prost(message, optional, tag = "11")]
2287 pub custom_unit: ::core::option::Option<::prost::alloc::string::String>,
2288 #[prost(message, optional, tag = "12")]
2289 pub decimal: ::core::option::Option<i32>,
2290 #[prost(message, optional, tag = "13")]
2291 pub legend: ::core::option::Option<common::Legend>,
2292 #[prost(message, optional, tag = "14")]
2293 pub hash_colors: ::core::option::Option<bool>,
2294 #[prost(message, optional, tag = "15")]
2295 pub decimal_precision: ::core::option::Option<bool>,
2296 #[prost(message, optional, tag = "16")]
2297 pub show_total: ::core::option::Option<bool>,
2298}
2299pub mod pie_chart {
2301 #[derive(serde::Serialize, serde::Deserialize)]
2302 #[serde(rename_all = "snake_case")]
2303 #[derive(Clone, PartialEq, ::prost::Message)]
2304 pub struct Query {
2305 #[prost(oneof = "query::Value", tags = "1, 2, 3, 4")]
2306 pub value: ::core::option::Option<query::Value>,
2307 }
2308 pub mod query {
2310 #[derive(serde::Serialize, serde::Deserialize)]
2311 #[serde(rename_all = "snake_case")]
2312 #[derive(Clone, PartialEq, ::prost::Oneof)]
2313 pub enum Value {
2314 #[prost(message, tag = "1")]
2315 Logs(super::LogsQuery),
2316 #[prost(message, tag = "2")]
2317 Spans(super::SpansQuery),
2318 #[prost(message, tag = "3")]
2319 Metrics(super::MetricsQuery),
2320 #[prost(message, tag = "4")]
2321 Dataprime(super::DataprimeQuery),
2322 }
2323 }
2324 #[derive(serde::Serialize, serde::Deserialize)]
2325 #[serde(rename_all = "snake_case")]
2326 #[derive(Clone, PartialEq, ::prost::Message)]
2327 pub struct StackDefinition {
2328 #[prost(message, optional, tag = "1")]
2329 pub max_slices_per_stack: ::core::option::Option<i32>,
2330 #[prost(message, optional, tag = "2")]
2331 pub stack_name_template: ::core::option::Option<::prost::alloc::string::String>,
2332 }
2333 #[derive(serde::Serialize, serde::Deserialize)]
2334 #[serde(rename_all = "snake_case")]
2335 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
2336 pub struct LabelDefinition {
2337 #[prost(enumeration = "LabelSource", tag = "1")]
2338 pub label_source: i32,
2339 #[prost(message, optional, tag = "2")]
2340 pub is_visible: ::core::option::Option<bool>,
2341 #[prost(message, optional, tag = "3")]
2342 pub show_name: ::core::option::Option<bool>,
2343 #[prost(message, optional, tag = "4")]
2344 pub show_value: ::core::option::Option<bool>,
2345 #[prost(message, optional, tag = "5")]
2346 pub show_percentage: ::core::option::Option<bool>,
2347 }
2348 #[derive(serde::Serialize, serde::Deserialize)]
2349 #[serde(rename_all = "snake_case")]
2350 #[derive(Clone, PartialEq, ::prost::Message)]
2351 pub struct LogsQuery {
2352 #[prost(message, optional, tag = "1")]
2353 pub lucene_query: ::core::option::Option<
2354 super::super::super::common::LuceneQuery,
2355 >,
2356 #[prost(message, optional, tag = "2")]
2357 pub aggregation: ::core::option::Option<
2358 super::super::super::common::LogsAggregation,
2359 >,
2360 #[prost(message, repeated, tag = "3")]
2361 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::LogsFilter>,
2362 #[prost(message, repeated, tag = "4")]
2363 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
2364 #[prost(message, optional, tag = "5")]
2365 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
2366 #[prost(message, repeated, tag = "6")]
2367 pub group_names_fields: ::prost::alloc::vec::Vec<
2368 super::super::super::common::ObservationField,
2369 >,
2370 #[prost(message, optional, tag = "7")]
2371 pub stacked_group_name_field: ::core::option::Option<
2372 super::super::super::common::ObservationField,
2373 >,
2374 #[prost(message, optional, tag = "8")]
2375 pub time_frame: ::core::option::Option<
2376 super::super::super::common::TimeFrameSelect,
2377 >,
2378 }
2379 #[derive(serde::Serialize, serde::Deserialize)]
2380 #[serde(rename_all = "snake_case")]
2381 #[derive(Clone, PartialEq, ::prost::Message)]
2382 pub struct SpansQuery {
2383 #[prost(message, optional, tag = "1")]
2384 pub lucene_query: ::core::option::Option<
2385 super::super::super::common::LuceneQuery,
2386 >,
2387 #[prost(message, optional, tag = "2")]
2388 pub aggregation: ::core::option::Option<
2389 super::super::super::common::SpansAggregation,
2390 >,
2391 #[prost(message, repeated, tag = "3")]
2392 pub filters: ::prost::alloc::vec::Vec<
2393 super::super::filters::filter::SpansFilter,
2394 >,
2395 #[prost(message, repeated, tag = "4")]
2396 pub group_names: ::prost::alloc::vec::Vec<
2397 super::super::super::common::SpanField,
2398 >,
2399 #[prost(message, optional, tag = "5")]
2400 pub stacked_group_name: ::core::option::Option<
2401 super::super::super::common::SpanField,
2402 >,
2403 #[prost(message, optional, tag = "6")]
2404 pub time_frame: ::core::option::Option<
2405 super::super::super::common::TimeFrameSelect,
2406 >,
2407 #[prost(message, repeated, tag = "7")]
2408 pub group_names_fields: ::prost::alloc::vec::Vec<
2409 super::super::super::common::SpanObservationField,
2410 >,
2411 #[prost(message, optional, tag = "8")]
2412 pub stacked_group_name_field: ::core::option::Option<
2413 super::super::super::common::SpanObservationField,
2414 >,
2415 }
2416 #[derive(serde::Serialize, serde::Deserialize)]
2417 #[serde(rename_all = "snake_case")]
2418 #[derive(Clone, PartialEq, ::prost::Message)]
2419 pub struct MetricsQuery {
2420 #[prost(message, optional, tag = "1")]
2421 pub promql_query: ::core::option::Option<
2422 super::super::super::common::PromQlQuery,
2423 >,
2424 #[prost(message, repeated, tag = "2")]
2425 pub filters: ::prost::alloc::vec::Vec<
2426 super::super::filters::filter::MetricsFilter,
2427 >,
2428 #[prost(message, repeated, tag = "3")]
2429 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
2430 #[prost(message, optional, tag = "4")]
2431 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
2432 #[prost(enumeration = "super::common::MetricsQueryEditorMode", tag = "5")]
2433 pub editor_mode: i32,
2434 #[prost(message, optional, tag = "6")]
2435 pub time_frame: ::core::option::Option<
2436 super::super::super::common::TimeFrameSelect,
2437 >,
2438 #[prost(enumeration = "super::super::super::common::PromQlQueryType", tag = "7")]
2439 pub promql_query_type: i32,
2440 #[prost(enumeration = "super::common::Aggregation", tag = "8")]
2441 pub aggregation: i32,
2442 }
2443 #[derive(serde::Serialize, serde::Deserialize)]
2444 #[serde(rename_all = "snake_case")]
2445 #[derive(Clone, PartialEq, ::prost::Message)]
2446 pub struct DataprimeQuery {
2447 #[prost(message, optional, tag = "1")]
2448 pub dataprime_query: ::core::option::Option<
2449 super::super::super::common::DataprimeQuery,
2450 >,
2451 #[prost(message, repeated, tag = "2")]
2452 pub filters: ::prost::alloc::vec::Vec<super::super::filters::filter::Source>,
2453 #[prost(message, repeated, tag = "3")]
2454 pub group_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
2455 #[prost(message, optional, tag = "4")]
2456 pub stacked_group_name: ::core::option::Option<::prost::alloc::string::String>,
2457 #[prost(message, optional, tag = "5")]
2458 pub time_frame: ::core::option::Option<
2459 super::super::super::common::TimeFrameSelect,
2460 >,
2461 }
2462 #[derive(serde::Serialize, serde::Deserialize)]
2463 #[serde(rename_all = "snake_case")]
2464 #[derive(
2465 Clone,
2466 Copy,
2467 Debug,
2468 PartialEq,
2469 Eq,
2470 Hash,
2471 PartialOrd,
2472 Ord,
2473 ::prost::Enumeration
2474 )]
2475 #[repr(i32)]
2476 pub enum LabelSource {
2477 Unspecified = 0,
2478 Inner = 1,
2479 Stack = 2,
2480 }
2481 impl LabelSource {
2482 pub fn as_str_name(&self) -> &'static str {
2487 match self {
2488 Self::Unspecified => "LABEL_SOURCE_UNSPECIFIED",
2489 Self::Inner => "LABEL_SOURCE_INNER",
2490 Self::Stack => "LABEL_SOURCE_STACK",
2491 }
2492 }
2493 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
2495 match value {
2496 "LABEL_SOURCE_UNSPECIFIED" => Some(Self::Unspecified),
2497 "LABEL_SOURCE_INNER" => Some(Self::Inner),
2498 "LABEL_SOURCE_STACK" => Some(Self::Stack),
2499 _ => None,
2500 }
2501 }
2502 }
2503}