#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Group {
#[prost(message, optional, tag = "1")]
pub field: ::core::option::Option<FieldGroup>,
#[prost(message, optional, tag = "2")]
pub value: ::core::option::Option<f64>,
#[prost(message, repeated, tag = "3")]
pub groups: ::prost::alloc::vec::Vec<Group>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MultiGroup {
#[prost(message, repeated, tag = "1")]
pub fields: ::prost::alloc::vec::Vec<FieldGroup>,
#[prost(message, repeated, tag = "2")]
pub values: ::prost::alloc::vec::Vec<f64>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FieldGroup {
#[prost(message, optional, tag = "1")]
pub name: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag = "2")]
pub value: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GroupLimit {
#[prost(message, repeated, tag = "1")]
pub group_by_fields: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(message, optional, tag = "2")]
pub limit: ::core::option::Option<i32>,
#[prost(message, optional, tag = "3")]
pub min_percentage: ::core::option::Option<i32>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GroupedSeries {
#[prost(message, repeated, tag = "2")]
pub groups: ::prost::alloc::vec::Vec<Group>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct Pagination {
#[prost(message, optional, tag = "1")]
pub offset: ::core::option::Option<i32>,
#[prost(message, optional, tag = "2")]
pub limit: ::core::option::Option<i32>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DataprimeQuery {
#[prost(string, tag = "1")]
pub text: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SerializedDataprimeQuery {
#[prost(bytes = "vec", tag = "1")]
pub data: ::prost::alloc::vec::Vec<u8>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FullDataprimeQuery {
#[prost(message, optional, tag = "1")]
pub serialized: ::core::option::Option<SerializedDataprimeQuery>,
#[prost(message, optional, tag = "2")]
pub raw: ::core::option::Option<DataprimeQuery>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PromQlQuery {
#[prost(message, optional, tag = "1")]
pub value: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LuceneQuery {
#[prost(message, optional, tag = "1")]
pub value: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PromQlQueryType {
Unspecified = 0,
Range = 1,
Instant = 2,
}
impl PromQlQueryType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "PROM_QL_QUERY_TYPE_UNSPECIFIED",
Self::Range => "PROM_QL_QUERY_TYPE_RANGE",
Self::Instant => "PROM_QL_QUERY_TYPE_INSTANT",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"PROM_QL_QUERY_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
"PROM_QL_QUERY_TYPE_RANGE" => Some(Self::Range),
"PROM_QL_QUERY_TYPE_INSTANT" => Some(Self::Instant),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct TimeFrameSelect {
#[prost(oneof = "time_frame_select::Value", tags = "1, 2")]
pub value: ::core::option::Option<time_frame_select::Value>,
}
pub mod time_frame_select {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
pub enum Value {
#[prost(message, tag = "1")]
AbsoluteTimeFrame(super::TimeFrame),
#[prost(message, tag = "2")]
RelativeTimeFrame(::prost_wkt_types::Duration),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct TimeFrame {
#[prost(message, optional, tag = "1")]
pub from: ::core::option::Option<::prost_wkt_types::Timestamp>,
#[prost(message, optional, tag = "2")]
pub to: ::core::option::Option<::prost_wkt_types::Timestamp>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TimeSeries {
#[prost(message, optional, tag = "1")]
pub name: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, repeated, tag = "2")]
pub values: ::prost::alloc::vec::Vec<DataPoint>,
#[prost(map = "string, string", tag = "3")]
pub labels: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct DataPoint {
#[prost(message, optional, tag = "1")]
pub timestamp: ::core::option::Option<::prost_wkt_types::Timestamp>,
#[prost(message, optional, tag = "2")]
pub value: ::core::option::Option<f64>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DashboardFolder {
#[prost(message, optional, tag = "1")]
pub id: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag = "2")]
pub name: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag = "3")]
pub parent_id: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ObservationField {
#[prost(message, repeated, tag = "1")]
pub keypath: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(enumeration = "DatasetScope", tag = "2")]
pub scope: i32,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum DatasetScope {
Unspecified = 0,
UserData = 1,
Label = 2,
Metadata = 3,
}
impl DatasetScope {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "DATASET_SCOPE_UNSPECIFIED",
Self::UserData => "DATASET_SCOPE_USER_DATA",
Self::Label => "DATASET_SCOPE_LABEL",
Self::Metadata => "DATASET_SCOPE_METADATA",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"DATASET_SCOPE_UNSPECIFIED" => Some(Self::Unspecified),
"DATASET_SCOPE_USER_DATA" => Some(Self::UserData),
"DATASET_SCOPE_LABEL" => Some(Self::Label),
"DATASET_SCOPE_METADATA" => Some(Self::Metadata),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SpanField {
#[prost(oneof = "span_field::Value", tags = "1, 2, 3")]
pub value: ::core::option::Option<span_field::Value>,
}
pub mod span_field {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum MetadataField {
Unspecified = 0,
ApplicationName = 1,
SubsystemName = 2,
ServiceName = 3,
OperationName = 4,
}
impl MetadataField {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "METADATA_FIELD_UNSPECIFIED",
Self::ApplicationName => "METADATA_FIELD_APPLICATION_NAME",
Self::SubsystemName => "METADATA_FIELD_SUBSYSTEM_NAME",
Self::ServiceName => "METADATA_FIELD_SERVICE_NAME",
Self::OperationName => "METADATA_FIELD_OPERATION_NAME",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"METADATA_FIELD_UNSPECIFIED" => Some(Self::Unspecified),
"METADATA_FIELD_APPLICATION_NAME" => Some(Self::ApplicationName),
"METADATA_FIELD_SUBSYSTEM_NAME" => Some(Self::SubsystemName),
"METADATA_FIELD_SERVICE_NAME" => Some(Self::ServiceName),
"METADATA_FIELD_OPERATION_NAME" => Some(Self::OperationName),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Value {
#[prost(enumeration = "MetadataField", tag = "1")]
MetadataField(i32),
#[prost(message, tag = "2")]
TagField(::prost::alloc::string::String),
#[prost(message, tag = "3")]
ProcessTagField(::prost::alloc::string::String),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LogsAggregation {
#[prost(oneof = "logs_aggregation::Value", tags = "1, 2, 3, 4, 5, 6, 7")]
pub value: ::core::option::Option<logs_aggregation::Value>,
}
pub mod logs_aggregation {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct Count {}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CountDistinct {
#[prost(message, optional, tag = "1")]
pub field: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag = "2")]
pub observation_field: ::core::option::Option<super::ObservationField>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Sum {
#[prost(message, optional, tag = "1")]
pub field: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag = "2")]
pub observation_field: ::core::option::Option<super::ObservationField>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Average {
#[prost(message, optional, tag = "1")]
pub field: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag = "2")]
pub observation_field: ::core::option::Option<super::ObservationField>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Min {
#[prost(message, optional, tag = "1")]
pub field: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag = "2")]
pub observation_field: ::core::option::Option<super::ObservationField>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Max {
#[prost(message, optional, tag = "1")]
pub field: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag = "2")]
pub observation_field: ::core::option::Option<super::ObservationField>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Percentile {
#[prost(message, optional, tag = "1")]
pub field: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag = "2")]
pub percent: ::core::option::Option<f64>,
#[prost(message, optional, tag = "3")]
pub observation_field: ::core::option::Option<super::ObservationField>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Value {
#[prost(message, tag = "1")]
Count(Count),
#[prost(message, tag = "2")]
CountDistinct(CountDistinct),
#[prost(message, tag = "3")]
Sum(Sum),
#[prost(message, tag = "4")]
Average(Average),
#[prost(message, tag = "5")]
Min(Min),
#[prost(message, tag = "6")]
Max(Max),
#[prost(message, tag = "7")]
Percentile(Percentile),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct SpansAggregation {
#[prost(oneof = "spans_aggregation::Aggregation", tags = "1, 2")]
pub aggregation: ::core::option::Option<spans_aggregation::Aggregation>,
}
pub mod spans_aggregation {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct MetricAggregation {
#[prost(enumeration = "metric_aggregation::MetricField", tag = "1")]
pub metric_field: i32,
#[prost(enumeration = "metric_aggregation::MetricAggregationType", tag = "2")]
pub aggregation_type: i32,
}
pub mod metric_aggregation {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum MetricField {
Unspecified = 0,
Duration = 1,
}
impl MetricField {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "METRIC_FIELD_UNSPECIFIED",
Self::Duration => "METRIC_FIELD_DURATION",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"METRIC_FIELD_UNSPECIFIED" => Some(Self::Unspecified),
"METRIC_FIELD_DURATION" => Some(Self::Duration),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum MetricAggregationType {
Unspecified = 0,
Min = 1,
Max = 2,
Average = 3,
Sum = 4,
Percentile99 = 5,
Percentile95 = 6,
Percentile50 = 7,
}
impl MetricAggregationType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "METRIC_AGGREGATION_TYPE_UNSPECIFIED",
Self::Min => "METRIC_AGGREGATION_TYPE_MIN",
Self::Max => "METRIC_AGGREGATION_TYPE_MAX",
Self::Average => "METRIC_AGGREGATION_TYPE_AVERAGE",
Self::Sum => "METRIC_AGGREGATION_TYPE_SUM",
Self::Percentile99 => "METRIC_AGGREGATION_TYPE_PERCENTILE_99",
Self::Percentile95 => "METRIC_AGGREGATION_TYPE_PERCENTILE_95",
Self::Percentile50 => "METRIC_AGGREGATION_TYPE_PERCENTILE_50",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"METRIC_AGGREGATION_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
"METRIC_AGGREGATION_TYPE_MIN" => Some(Self::Min),
"METRIC_AGGREGATION_TYPE_MAX" => Some(Self::Max),
"METRIC_AGGREGATION_TYPE_AVERAGE" => Some(Self::Average),
"METRIC_AGGREGATION_TYPE_SUM" => Some(Self::Sum),
"METRIC_AGGREGATION_TYPE_PERCENTILE_99" => Some(Self::Percentile99),
"METRIC_AGGREGATION_TYPE_PERCENTILE_95" => Some(Self::Percentile95),
"METRIC_AGGREGATION_TYPE_PERCENTILE_50" => Some(Self::Percentile50),
_ => None,
}
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct DimensionAggregation {
#[prost(enumeration = "dimension_aggregation::DimensionField", tag = "1")]
pub dimension_field: i32,
#[prost(
enumeration = "dimension_aggregation::DimensionAggregationType",
tag = "2"
)]
pub aggregation_type: i32,
}
pub mod dimension_aggregation {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum DimensionField {
Unspecified = 0,
TraceId = 1,
}
impl DimensionField {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "DIMENSION_FIELD_UNSPECIFIED",
Self::TraceId => "DIMENSION_FIELD_TRACE_ID",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"DIMENSION_FIELD_UNSPECIFIED" => Some(Self::Unspecified),
"DIMENSION_FIELD_TRACE_ID" => Some(Self::TraceId),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum DimensionAggregationType {
Unspecified = 0,
UniqueCount = 1,
ErrorCount = 2,
}
impl DimensionAggregationType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "DIMENSION_AGGREGATION_TYPE_UNSPECIFIED",
Self::UniqueCount => "DIMENSION_AGGREGATION_TYPE_UNIQUE_COUNT",
Self::ErrorCount => "DIMENSION_AGGREGATION_TYPE_ERROR_COUNT",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"DIMENSION_AGGREGATION_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
"DIMENSION_AGGREGATION_TYPE_UNIQUE_COUNT" => Some(Self::UniqueCount),
"DIMENSION_AGGREGATION_TYPE_ERROR_COUNT" => Some(Self::ErrorCount),
_ => None,
}
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
pub enum Aggregation {
#[prost(message, tag = "1")]
MetricAggregation(MetricAggregation),
#[prost(message, tag = "2")]
DimensionAggregation(DimensionAggregation),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum OrderDirection {
Unspecified = 0,
Asc = 1,
Desc = 2,
}
impl OrderDirection {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "ORDER_DIRECTION_UNSPECIFIED",
Self::Asc => "ORDER_DIRECTION_ASC",
Self::Desc => "ORDER_DIRECTION_DESC",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"ORDER_DIRECTION_UNSPECIFIED" => Some(Self::Unspecified),
"ORDER_DIRECTION_ASC" => Some(Self::Asc),
"ORDER_DIRECTION_DESC" => Some(Self::Desc),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct OrderingField {
#[prost(message, optional, tag = "1")]
pub field: ::core::option::Option<::prost::alloc::string::String>,
#[prost(enumeration = "OrderDirection", tag = "2")]
pub order_direction: i32,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DataprimeResult {
#[prost(message, repeated, tag = "1")]
pub metadata: ::prost::alloc::vec::Vec<dataprime_result::KeyValue>,
#[prost(message, repeated, tag = "2")]
pub labels: ::prost::alloc::vec::Vec<dataprime_result::KeyValue>,
#[prost(string, tag = "3")]
pub user_data: ::prost::alloc::string::String,
}
pub mod dataprime_result {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct KeyValue {
#[prost(string, tag = "1")]
pub key: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub value: ::prost::alloc::string::String,
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AnnotationEvent {
#[prost(oneof = "annotation_event::Value", tags = "1, 2")]
pub value: ::core::option::Option<annotation_event::Value>,
}
pub mod annotation_event {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Instant {
#[prost(message, optional, tag = "1")]
pub timestamp: ::core::option::Option<::prost_wkt_types::Timestamp>,
#[prost(map = "string, string", tag = "2")]
pub labels: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(message, optional, tag = "3")]
pub payload: ::core::option::Option<::prost_wkt_types::Struct>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Range {
#[prost(message, optional, tag = "1")]
pub start: ::core::option::Option<::prost_wkt_types::Timestamp>,
#[prost(message, optional, tag = "2")]
pub end: ::core::option::Option<::prost_wkt_types::Timestamp>,
#[prost(map = "string, string", tag = "3")]
pub labels: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(message, optional, tag = "4")]
pub payload: ::core::option::Option<::prost_wkt_types::Struct>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Value {
#[prost(message, tag = "1")]
Instant(Instant),
#[prost(message, tag = "2")]
Range(Range),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum LogSeverityLevel {
Unspecified = 0,
Debug = 1,
Verbose = 2,
Info = 3,
Warning = 4,
Error = 5,
Critical = 6,
}
impl LogSeverityLevel {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "LOG_SEVERITY_LEVEL_UNSPECIFIED",
Self::Debug => "LOG_SEVERITY_LEVEL_DEBUG",
Self::Verbose => "LOG_SEVERITY_LEVEL_VERBOSE",
Self::Info => "LOG_SEVERITY_LEVEL_INFO",
Self::Warning => "LOG_SEVERITY_LEVEL_WARNING",
Self::Error => "LOG_SEVERITY_LEVEL_ERROR",
Self::Critical => "LOG_SEVERITY_LEVEL_CRITICAL",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"LOG_SEVERITY_LEVEL_UNSPECIFIED" => Some(Self::Unspecified),
"LOG_SEVERITY_LEVEL_DEBUG" => Some(Self::Debug),
"LOG_SEVERITY_LEVEL_VERBOSE" => Some(Self::Verbose),
"LOG_SEVERITY_LEVEL_INFO" => Some(Self::Info),
"LOG_SEVERITY_LEVEL_WARNING" => Some(Self::Warning),
"LOG_SEVERITY_LEVEL_ERROR" => Some(Self::Error),
"LOG_SEVERITY_LEVEL_CRITICAL" => Some(Self::Critical),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LabelledValue {
#[prost(message, optional, tag = "1")]
pub name: ::core::option::Option<::prost::alloc::string::String>,
#[prost(map = "string, string", tag = "2")]
pub labels: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(message, optional, tag = "3")]
pub value: ::core::option::Option<f64>,
}