google-cloud-logging-v2 1.15.0

Google Cloud Client Libraries for Rust - Cloud Logging API
Documentation
// This file is @generated by prost-build.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LogEntry {
    #[prost(string, tag = "12")]
    pub log_name: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "8")]
    pub resource: ::core::option::Option<super::super::api::MonitoredResource>,
    #[prost(message, optional, tag = "9")]
    pub timestamp: ::core::option::Option<::prost_types::Timestamp>,
    #[prost(message, optional, tag = "24")]
    pub receive_timestamp: ::core::option::Option<::prost_types::Timestamp>,
    #[prost(enumeration = "super::r#type::LogSeverity", tag = "10")]
    pub severity: i32,
    #[prost(string, tag = "4")]
    pub insert_id: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "7")]
    pub http_request: ::core::option::Option<super::r#type::HttpRequest>,
    #[prost(map = "string, string", tag = "11")]
    pub labels: ::std::collections::HashMap<
        ::prost::alloc::string::String,
        ::prost::alloc::string::String,
    >,
    #[prost(message, optional, tag = "15")]
    pub operation: ::core::option::Option<LogEntryOperation>,
    #[prost(string, tag = "22")]
    pub trace: ::prost::alloc::string::String,
    #[prost(string, tag = "27")]
    pub span_id: ::prost::alloc::string::String,
    #[prost(bool, tag = "30")]
    pub trace_sampled: bool,
    #[prost(message, optional, tag = "23")]
    pub source_location: ::core::option::Option<LogEntrySourceLocation>,
    #[prost(message, optional, tag = "35")]
    pub split: ::core::option::Option<LogSplit>,
    #[prost(oneof = "log_entry::Payload", tags = "2, 3, 6")]
    pub payload: ::core::option::Option<log_entry::Payload>,
}
/// Nested message and enum types in `LogEntry`.
pub mod log_entry {
    #[derive(Clone, PartialEq, ::prost::Oneof)]
    pub enum Payload {
        #[prost(message, tag = "2")]
        ProtoPayload(::prost_types::Any),
        #[prost(string, tag = "3")]
        TextPayload(::prost::alloc::string::String),
        #[prost(message, tag = "6")]
        JsonPayload(::prost_types::Struct),
    }
}
impl ::prost::Name for LogEntry {
    const NAME: &'static str = "LogEntry";
    const PACKAGE: &'static str = "google.logging.v2";
    fn full_name() -> ::prost::alloc::string::String {
        "google.logging.v2.LogEntry".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "type.googleapis.com/google.logging.v2.LogEntry".into()
    }
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct LogEntryOperation {
    #[prost(string, tag = "1")]
    pub id: ::prost::alloc::string::String,
    #[prost(string, tag = "2")]
    pub producer: ::prost::alloc::string::String,
    #[prost(bool, tag = "3")]
    pub first: bool,
    #[prost(bool, tag = "4")]
    pub last: bool,
}
impl ::prost::Name for LogEntryOperation {
    const NAME: &'static str = "LogEntryOperation";
    const PACKAGE: &'static str = "google.logging.v2";
    fn full_name() -> ::prost::alloc::string::String {
        "google.logging.v2.LogEntryOperation".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "type.googleapis.com/google.logging.v2.LogEntryOperation".into()
    }
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct LogEntrySourceLocation {
    #[prost(string, tag = "1")]
    pub file: ::prost::alloc::string::String,
    #[prost(int64, tag = "2")]
    pub line: i64,
    #[prost(string, tag = "3")]
    pub function: ::prost::alloc::string::String,
}
impl ::prost::Name for LogEntrySourceLocation {
    const NAME: &'static str = "LogEntrySourceLocation";
    const PACKAGE: &'static str = "google.logging.v2";
    fn full_name() -> ::prost::alloc::string::String {
        "google.logging.v2.LogEntrySourceLocation".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "type.googleapis.com/google.logging.v2.LogEntrySourceLocation".into()
    }
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct LogSplit {
    #[prost(string, tag = "1")]
    pub uid: ::prost::alloc::string::String,
    #[prost(int32, tag = "2")]
    pub index: i32,
    #[prost(int32, tag = "3")]
    pub total_splits: i32,
}
impl ::prost::Name for LogSplit {
    const NAME: &'static str = "LogSplit";
    const PACKAGE: &'static str = "google.logging.v2";
    fn full_name() -> ::prost::alloc::string::String {
        "google.logging.v2.LogSplit".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "type.googleapis.com/google.logging.v2.LogSplit".into()
    }
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct TailLogEntriesRequest {
    #[prost(string, repeated, tag = "1")]
    pub resource_names: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(string, tag = "2")]
    pub filter: ::prost::alloc::string::String,
    #[prost(message, optional, tag = "3")]
    pub buffer_window: ::core::option::Option<::prost_types::Duration>,
}
impl ::prost::Name for TailLogEntriesRequest {
    const NAME: &'static str = "TailLogEntriesRequest";
    const PACKAGE: &'static str = "google.logging.v2";
    fn full_name() -> ::prost::alloc::string::String {
        "google.logging.v2.TailLogEntriesRequest".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "type.googleapis.com/google.logging.v2.TailLogEntriesRequest".into()
    }
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TailLogEntriesResponse {
    #[prost(message, repeated, tag = "1")]
    pub entries: ::prost::alloc::vec::Vec<LogEntry>,
    #[prost(message, repeated, tag = "2")]
    pub suppression_info: ::prost::alloc::vec::Vec<
        tail_log_entries_response::SuppressionInfo,
    >,
}
/// Nested message and enum types in `TailLogEntriesResponse`.
pub mod tail_log_entries_response {
    #[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
    pub struct SuppressionInfo {
        #[prost(enumeration = "suppression_info::Reason", tag = "1")]
        pub reason: i32,
        #[prost(int32, tag = "2")]
        pub suppressed_count: i32,
    }
    /// Nested message and enum types in `SuppressionInfo`.
    pub mod suppression_info {
        #[derive(
            Clone,
            Copy,
            Debug,
            PartialEq,
            Eq,
            Hash,
            PartialOrd,
            Ord,
            ::prost::Enumeration
        )]
        #[repr(i32)]
        pub enum Reason {
            Unspecified = 0,
            RateLimit = 1,
            NotConsumed = 2,
        }
        impl Reason {
            /// String value of the enum field names used in the ProtoBuf definition.
            ///
            /// The values are not transformed in any way and thus are considered stable
            /// (if the ProtoBuf definition does not change) and safe for programmatic use.
            pub fn as_str_name(&self) -> &'static str {
                match self {
                    Self::Unspecified => "REASON_UNSPECIFIED",
                    Self::RateLimit => "RATE_LIMIT",
                    Self::NotConsumed => "NOT_CONSUMED",
                }
            }
            /// Creates an enum from field names used in the ProtoBuf definition.
            pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
                match value {
                    "REASON_UNSPECIFIED" => Some(Self::Unspecified),
                    "RATE_LIMIT" => Some(Self::RateLimit),
                    "NOT_CONSUMED" => Some(Self::NotConsumed),
                    _ => None,
                }
            }
        }
    }
    impl ::prost::Name for SuppressionInfo {
        const NAME: &'static str = "SuppressionInfo";
        const PACKAGE: &'static str = "google.logging.v2";
        fn full_name() -> ::prost::alloc::string::String {
            "google.logging.v2.TailLogEntriesResponse.SuppressionInfo".into()
        }
        fn type_url() -> ::prost::alloc::string::String {
            "type.googleapis.com/google.logging.v2.TailLogEntriesResponse.SuppressionInfo"
                .into()
        }
    }
}
impl ::prost::Name for TailLogEntriesResponse {
    const NAME: &'static str = "TailLogEntriesResponse";
    const PACKAGE: &'static str = "google.logging.v2";
    fn full_name() -> ::prost::alloc::string::String {
        "google.logging.v2.TailLogEntriesResponse".into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "type.googleapis.com/google.logging.v2.TailLogEntriesResponse".into()
    }
}