1#[derive(Clone, PartialEq, ::prost::Message)]
3pub struct TcpAccessLogEntry {
4 #[prost(message, optional, tag = "1")]
6 pub common_properties: ::core::option::Option<AccessLogCommon>,
7 #[prost(message, optional, tag = "2")]
9 pub connection_properties: ::core::option::Option<ConnectionProperties>,
10}
11impl ::prost::Name for TcpAccessLogEntry {
12 const NAME: &'static str = "TCPAccessLogEntry";
13 const PACKAGE: &'static str = "envoy.data.accesslog.v3";
14 fn full_name() -> ::prost::alloc::string::String {
15 "envoy.data.accesslog.v3.TCPAccessLogEntry".into()
16 }
17 fn type_url() -> ::prost::alloc::string::String {
18 "type.googleapis.com/envoy.data.accesslog.v3.TCPAccessLogEntry".into()
19 }
20}
21#[derive(Clone, PartialEq, ::prost::Message)]
22pub struct HttpAccessLogEntry {
23 #[prost(message, optional, tag = "1")]
25 pub common_properties: ::core::option::Option<AccessLogCommon>,
26 #[prost(enumeration = "http_access_log_entry::HttpVersion", tag = "2")]
27 pub protocol_version: i32,
28 #[prost(message, optional, tag = "3")]
30 pub request: ::core::option::Option<HttpRequestProperties>,
31 #[prost(message, optional, tag = "4")]
33 pub response: ::core::option::Option<HttpResponseProperties>,
34}
35pub mod http_access_log_entry {
37 #[derive(
39 Clone,
40 Copy,
41 Debug,
42 PartialEq,
43 Eq,
44 Hash,
45 PartialOrd,
46 Ord,
47 ::prost::Enumeration
48 )]
49 #[repr(i32)]
50 pub enum HttpVersion {
51 ProtocolUnspecified = 0,
52 Http10 = 1,
53 Http11 = 2,
54 Http2 = 3,
55 Http3 = 4,
56 }
57 impl HttpVersion {
58 pub fn as_str_name(&self) -> &'static str {
63 match self {
64 Self::ProtocolUnspecified => "PROTOCOL_UNSPECIFIED",
65 Self::Http10 => "HTTP10",
66 Self::Http11 => "HTTP11",
67 Self::Http2 => "HTTP2",
68 Self::Http3 => "HTTP3",
69 }
70 }
71 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
73 match value {
74 "PROTOCOL_UNSPECIFIED" => Some(Self::ProtocolUnspecified),
75 "HTTP10" => Some(Self::Http10),
76 "HTTP11" => Some(Self::Http11),
77 "HTTP2" => Some(Self::Http2),
78 "HTTP3" => Some(Self::Http3),
79 _ => None,
80 }
81 }
82 }
83}
84impl ::prost::Name for HttpAccessLogEntry {
85 const NAME: &'static str = "HTTPAccessLogEntry";
86 const PACKAGE: &'static str = "envoy.data.accesslog.v3";
87 fn full_name() -> ::prost::alloc::string::String {
88 "envoy.data.accesslog.v3.HTTPAccessLogEntry".into()
89 }
90 fn type_url() -> ::prost::alloc::string::String {
91 "type.googleapis.com/envoy.data.accesslog.v3.HTTPAccessLogEntry".into()
92 }
93}
94#[derive(Clone, Copy, PartialEq, ::prost::Message)]
96pub struct ConnectionProperties {
97 #[prost(uint64, tag = "1")]
99 pub received_bytes: u64,
100 #[prost(uint64, tag = "2")]
102 pub sent_bytes: u64,
103}
104impl ::prost::Name for ConnectionProperties {
105 const NAME: &'static str = "ConnectionProperties";
106 const PACKAGE: &'static str = "envoy.data.accesslog.v3";
107 fn full_name() -> ::prost::alloc::string::String {
108 "envoy.data.accesslog.v3.ConnectionProperties".into()
109 }
110 fn type_url() -> ::prost::alloc::string::String {
111 "type.googleapis.com/envoy.data.accesslog.v3.ConnectionProperties".into()
112 }
113}
114#[derive(Clone, PartialEq, ::prost::Message)]
117pub struct AccessLogCommon {
118 #[prost(double, tag = "1")]
122 pub sample_rate: f64,
123 #[prost(message, optional, tag = "2")]
127 pub downstream_remote_address: ::core::option::Option<
128 super::super::super::config::core::v3::Address,
129 >,
130 #[prost(message, optional, tag = "3")]
132 pub downstream_local_address: ::core::option::Option<
133 super::super::super::config::core::v3::Address,
134 >,
135 #[prost(message, optional, tag = "4")]
137 pub tls_properties: ::core::option::Option<TlsProperties>,
138 #[prost(message, optional, tag = "5")]
141 pub start_time: ::core::option::Option<
142 super::super::super::super::google::protobuf::Timestamp,
143 >,
144 #[prost(message, optional, tag = "6")]
147 pub time_to_last_rx_byte: ::core::option::Option<
148 super::super::super::super::google::protobuf::Duration,
149 >,
150 #[prost(message, optional, tag = "7")]
155 pub time_to_first_upstream_tx_byte: ::core::option::Option<
156 super::super::super::super::google::protobuf::Duration,
157 >,
158 #[prost(message, optional, tag = "8")]
163 pub time_to_last_upstream_tx_byte: ::core::option::Option<
164 super::super::super::super::google::protobuf::Duration,
165 >,
166 #[prost(message, optional, tag = "9")]
169 pub time_to_first_upstream_rx_byte: ::core::option::Option<
170 super::super::super::super::google::protobuf::Duration,
171 >,
172 #[prost(message, optional, tag = "10")]
175 pub time_to_last_upstream_rx_byte: ::core::option::Option<
176 super::super::super::super::google::protobuf::Duration,
177 >,
178 #[prost(message, optional, tag = "11")]
183 pub time_to_first_downstream_tx_byte: ::core::option::Option<
184 super::super::super::super::google::protobuf::Duration,
185 >,
186 #[prost(message, optional, tag = "12")]
193 pub time_to_last_downstream_tx_byte: ::core::option::Option<
194 super::super::super::super::google::protobuf::Duration,
195 >,
196 #[prost(message, optional, tag = "13")]
199 pub upstream_remote_address: ::core::option::Option<
200 super::super::super::config::core::v3::Address,
201 >,
202 #[prost(message, optional, tag = "14")]
204 pub upstream_local_address: ::core::option::Option<
205 super::super::super::config::core::v3::Address,
206 >,
207 #[prost(string, tag = "15")]
209 pub upstream_cluster: ::prost::alloc::string::String,
210 #[prost(message, optional, tag = "16")]
212 pub response_flags: ::core::option::Option<ResponseFlags>,
213 #[prost(message, optional, tag = "17")]
222 pub metadata: ::core::option::Option<
223 super::super::super::config::core::v3::Metadata,
224 >,
225 #[prost(string, tag = "18")]
230 pub upstream_transport_failure_reason: ::prost::alloc::string::String,
231 #[prost(string, tag = "19")]
233 pub route_name: ::prost::alloc::string::String,
234 #[prost(message, optional, tag = "20")]
238 pub downstream_direct_remote_address: ::core::option::Option<
239 super::super::super::config::core::v3::Address,
240 >,
241 #[prost(map = "string, message", tag = "21")]
245 pub filter_state_objects: ::std::collections::HashMap<
246 ::prost::alloc::string::String,
247 super::super::super::super::google::protobuf::Any,
248 >,
249 #[prost(map = "string, string", tag = "22")]
253 pub custom_tags: ::std::collections::HashMap<
254 ::prost::alloc::string::String,
255 ::prost::alloc::string::String,
256 >,
257 #[prost(message, optional, tag = "23")]
262 pub duration: ::core::option::Option<
263 super::super::super::super::google::protobuf::Duration,
264 >,
265 #[prost(uint32, tag = "24")]
268 pub upstream_request_attempt_count: u32,
269 #[prost(string, tag = "25")]
271 pub connection_termination_details: ::prost::alloc::string::String,
272 #[prost(string, tag = "26")]
275 pub stream_id: ::prost::alloc::string::String,
276 #[deprecated]
289 #[prost(bool, tag = "27")]
290 pub intermediate_log_entry: bool,
291 #[prost(string, tag = "28")]
295 pub downstream_transport_failure_reason: ::prost::alloc::string::String,
296 #[prost(uint64, tag = "29")]
299 pub downstream_wire_bytes_sent: u64,
300 #[prost(uint64, tag = "30")]
303 pub downstream_wire_bytes_received: u64,
304 #[prost(uint64, tag = "31")]
307 pub upstream_wire_bytes_sent: u64,
308 #[prost(uint64, tag = "32")]
311 pub upstream_wire_bytes_received: u64,
312 #[prost(enumeration = "AccessLogType", tag = "33")]
319 pub access_log_type: i32,
320}
321impl ::prost::Name for AccessLogCommon {
322 const NAME: &'static str = "AccessLogCommon";
323 const PACKAGE: &'static str = "envoy.data.accesslog.v3";
324 fn full_name() -> ::prost::alloc::string::String {
325 "envoy.data.accesslog.v3.AccessLogCommon".into()
326 }
327 fn type_url() -> ::prost::alloc::string::String {
328 "type.googleapis.com/envoy.data.accesslog.v3.AccessLogCommon".into()
329 }
330}
331#[derive(Clone, Copy, PartialEq, ::prost::Message)]
334pub struct ResponseFlags {
335 #[prost(bool, tag = "1")]
337 pub failed_local_healthcheck: bool,
338 #[prost(bool, tag = "2")]
340 pub no_healthy_upstream: bool,
341 #[prost(bool, tag = "3")]
343 pub upstream_request_timeout: bool,
344 #[prost(bool, tag = "4")]
346 pub local_reset: bool,
347 #[prost(bool, tag = "5")]
349 pub upstream_remote_reset: bool,
350 #[prost(bool, tag = "6")]
352 pub upstream_connection_failure: bool,
353 #[prost(bool, tag = "7")]
355 pub upstream_connection_termination: bool,
356 #[prost(bool, tag = "8")]
358 pub upstream_overflow: bool,
359 #[prost(bool, tag = "9")]
361 pub no_route_found: bool,
362 #[prost(bool, tag = "10")]
364 pub delay_injected: bool,
365 #[prost(bool, tag = "11")]
367 pub fault_injected: bool,
368 #[prost(bool, tag = "12")]
370 pub rate_limited: bool,
371 #[prost(message, optional, tag = "13")]
373 pub unauthorized_details: ::core::option::Option<response_flags::Unauthorized>,
374 #[prost(bool, tag = "14")]
376 pub rate_limit_service_error: bool,
377 #[prost(bool, tag = "15")]
379 pub downstream_connection_termination: bool,
380 #[prost(bool, tag = "16")]
382 pub upstream_retry_limit_exceeded: bool,
383 #[prost(bool, tag = "17")]
385 pub stream_idle_timeout: bool,
386 #[prost(bool, tag = "18")]
389 pub invalid_envoy_request_headers: bool,
390 #[prost(bool, tag = "19")]
392 pub downstream_protocol_error: bool,
393 #[prost(bool, tag = "20")]
395 pub upstream_max_stream_duration_reached: bool,
396 #[prost(bool, tag = "21")]
398 pub response_from_cache_filter: bool,
399 #[prost(bool, tag = "22")]
401 pub no_filter_config_found: bool,
402 #[prost(bool, tag = "23")]
404 pub duration_timeout: bool,
405 #[prost(bool, tag = "24")]
407 pub upstream_protocol_error: bool,
408 #[prost(bool, tag = "25")]
410 pub no_cluster_found: bool,
411 #[prost(bool, tag = "26")]
413 pub overload_manager: bool,
414 #[prost(bool, tag = "27")]
416 pub dns_resolution_failure: bool,
417 #[prost(bool, tag = "28")]
419 pub downstream_remote_reset: bool,
420}
421pub mod response_flags {
423 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
424 pub struct Unauthorized {
425 #[prost(enumeration = "unauthorized::Reason", tag = "1")]
426 pub reason: i32,
427 }
428 pub mod unauthorized {
430 #[derive(
432 Clone,
433 Copy,
434 Debug,
435 PartialEq,
436 Eq,
437 Hash,
438 PartialOrd,
439 Ord,
440 ::prost::Enumeration
441 )]
442 #[repr(i32)]
443 pub enum Reason {
444 Unspecified = 0,
445 ExternalService = 1,
447 }
448 impl Reason {
449 pub fn as_str_name(&self) -> &'static str {
454 match self {
455 Self::Unspecified => "REASON_UNSPECIFIED",
456 Self::ExternalService => "EXTERNAL_SERVICE",
457 }
458 }
459 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
461 match value {
462 "REASON_UNSPECIFIED" => Some(Self::Unspecified),
463 "EXTERNAL_SERVICE" => Some(Self::ExternalService),
464 _ => None,
465 }
466 }
467 }
468 }
469 impl ::prost::Name for Unauthorized {
470 const NAME: &'static str = "Unauthorized";
471 const PACKAGE: &'static str = "envoy.data.accesslog.v3";
472 fn full_name() -> ::prost::alloc::string::String {
473 "envoy.data.accesslog.v3.ResponseFlags.Unauthorized".into()
474 }
475 fn type_url() -> ::prost::alloc::string::String {
476 "type.googleapis.com/envoy.data.accesslog.v3.ResponseFlags.Unauthorized"
477 .into()
478 }
479 }
480}
481impl ::prost::Name for ResponseFlags {
482 const NAME: &'static str = "ResponseFlags";
483 const PACKAGE: &'static str = "envoy.data.accesslog.v3";
484 fn full_name() -> ::prost::alloc::string::String {
485 "envoy.data.accesslog.v3.ResponseFlags".into()
486 }
487 fn type_url() -> ::prost::alloc::string::String {
488 "type.googleapis.com/envoy.data.accesslog.v3.ResponseFlags".into()
489 }
490}
491#[derive(Clone, PartialEq, ::prost::Message)]
494pub struct TlsProperties {
495 #[prost(enumeration = "tls_properties::TlsVersion", tag = "1")]
497 pub tls_version: i32,
498 #[prost(message, optional, tag = "2")]
504 pub tls_cipher_suite: ::core::option::Option<
505 super::super::super::super::google::protobuf::UInt32Value,
506 >,
507 #[prost(string, tag = "3")]
509 pub tls_sni_hostname: ::prost::alloc::string::String,
510 #[prost(message, optional, tag = "4")]
512 pub local_certificate_properties: ::core::option::Option<
513 tls_properties::CertificateProperties,
514 >,
515 #[prost(message, optional, tag = "5")]
517 pub peer_certificate_properties: ::core::option::Option<
518 tls_properties::CertificateProperties,
519 >,
520 #[prost(string, tag = "6")]
522 pub tls_session_id: ::prost::alloc::string::String,
523 #[prost(string, tag = "7")]
525 pub ja3_fingerprint: ::prost::alloc::string::String,
526}
527pub mod tls_properties {
529 #[derive(Clone, PartialEq, ::prost::Message)]
530 pub struct CertificateProperties {
531 #[prost(message, repeated, tag = "1")]
533 pub subject_alt_name: ::prost::alloc::vec::Vec<
534 certificate_properties::SubjectAltName,
535 >,
536 #[prost(string, tag = "2")]
538 pub subject: ::prost::alloc::string::String,
539 #[prost(string, tag = "3")]
541 pub issuer: ::prost::alloc::string::String,
542 }
543 pub mod certificate_properties {
545 #[derive(Clone, PartialEq, ::prost::Message)]
546 pub struct SubjectAltName {
547 #[prost(oneof = "subject_alt_name::San", tags = "1, 2")]
548 pub san: ::core::option::Option<subject_alt_name::San>,
549 }
550 pub mod subject_alt_name {
552 #[derive(Clone, PartialEq, ::prost::Oneof)]
553 pub enum San {
554 #[prost(string, tag = "1")]
555 Uri(::prost::alloc::string::String),
556 #[prost(string, tag = "2")]
558 Dns(::prost::alloc::string::String),
559 }
560 }
561 impl ::prost::Name for SubjectAltName {
562 const NAME: &'static str = "SubjectAltName";
563 const PACKAGE: &'static str = "envoy.data.accesslog.v3";
564 fn full_name() -> ::prost::alloc::string::String {
565 "envoy.data.accesslog.v3.TLSProperties.CertificateProperties.SubjectAltName"
566 .into()
567 }
568 fn type_url() -> ::prost::alloc::string::String {
569 "type.googleapis.com/envoy.data.accesslog.v3.TLSProperties.CertificateProperties.SubjectAltName"
570 .into()
571 }
572 }
573 }
574 impl ::prost::Name for CertificateProperties {
575 const NAME: &'static str = "CertificateProperties";
576 const PACKAGE: &'static str = "envoy.data.accesslog.v3";
577 fn full_name() -> ::prost::alloc::string::String {
578 "envoy.data.accesslog.v3.TLSProperties.CertificateProperties".into()
579 }
580 fn type_url() -> ::prost::alloc::string::String {
581 "type.googleapis.com/envoy.data.accesslog.v3.TLSProperties.CertificateProperties"
582 .into()
583 }
584 }
585 #[derive(
586 Clone,
587 Copy,
588 Debug,
589 PartialEq,
590 Eq,
591 Hash,
592 PartialOrd,
593 Ord,
594 ::prost::Enumeration
595 )]
596 #[repr(i32)]
597 pub enum TlsVersion {
598 VersionUnspecified = 0,
599 TlSv1 = 1,
600 TlSv11 = 2,
601 TlSv12 = 3,
602 TlSv13 = 4,
603 }
604 impl TlsVersion {
605 pub fn as_str_name(&self) -> &'static str {
610 match self {
611 Self::VersionUnspecified => "VERSION_UNSPECIFIED",
612 Self::TlSv1 => "TLSv1",
613 Self::TlSv11 => "TLSv1_1",
614 Self::TlSv12 => "TLSv1_2",
615 Self::TlSv13 => "TLSv1_3",
616 }
617 }
618 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
620 match value {
621 "VERSION_UNSPECIFIED" => Some(Self::VersionUnspecified),
622 "TLSv1" => Some(Self::TlSv1),
623 "TLSv1_1" => Some(Self::TlSv11),
624 "TLSv1_2" => Some(Self::TlSv12),
625 "TLSv1_3" => Some(Self::TlSv13),
626 _ => None,
627 }
628 }
629 }
630}
631impl ::prost::Name for TlsProperties {
632 const NAME: &'static str = "TLSProperties";
633 const PACKAGE: &'static str = "envoy.data.accesslog.v3";
634 fn full_name() -> ::prost::alloc::string::String {
635 "envoy.data.accesslog.v3.TLSProperties".into()
636 }
637 fn type_url() -> ::prost::alloc::string::String {
638 "type.googleapis.com/envoy.data.accesslog.v3.TLSProperties".into()
639 }
640}
641#[derive(Clone, PartialEq, ::prost::Message)]
643pub struct HttpRequestProperties {
644 #[prost(
646 enumeration = "super::super::super::config::core::v3::RequestMethod",
647 tag = "1"
648 )]
649 pub request_method: i32,
650 #[prost(string, tag = "2")]
652 pub scheme: ::prost::alloc::string::String,
653 #[prost(string, tag = "3")]
655 pub authority: ::prost::alloc::string::String,
656 #[prost(message, optional, tag = "4")]
659 pub port: ::core::option::Option<
660 super::super::super::super::google::protobuf::UInt32Value,
661 >,
662 #[prost(string, tag = "5")]
664 pub path: ::prost::alloc::string::String,
665 #[prost(string, tag = "6")]
667 pub user_agent: ::prost::alloc::string::String,
668 #[prost(string, tag = "7")]
670 pub referer: ::prost::alloc::string::String,
671 #[prost(string, tag = "8")]
673 pub forwarded_for: ::prost::alloc::string::String,
674 #[prost(string, tag = "9")]
680 pub request_id: ::prost::alloc::string::String,
681 #[prost(string, tag = "10")]
683 pub original_path: ::prost::alloc::string::String,
684 #[prost(uint64, tag = "11")]
689 pub request_headers_bytes: u64,
690 #[prost(uint64, tag = "12")]
695 pub request_body_bytes: u64,
696 #[prost(map = "string, string", tag = "13")]
698 pub request_headers: ::std::collections::HashMap<
699 ::prost::alloc::string::String,
700 ::prost::alloc::string::String,
701 >,
702 #[prost(uint64, tag = "14")]
706 pub upstream_header_bytes_sent: u64,
707 #[prost(uint64, tag = "15")]
709 pub downstream_header_bytes_received: u64,
710}
711impl ::prost::Name for HttpRequestProperties {
712 const NAME: &'static str = "HTTPRequestProperties";
713 const PACKAGE: &'static str = "envoy.data.accesslog.v3";
714 fn full_name() -> ::prost::alloc::string::String {
715 "envoy.data.accesslog.v3.HTTPRequestProperties".into()
716 }
717 fn type_url() -> ::prost::alloc::string::String {
718 "type.googleapis.com/envoy.data.accesslog.v3.HTTPRequestProperties".into()
719 }
720}
721#[derive(Clone, PartialEq, ::prost::Message)]
723pub struct HttpResponseProperties {
724 #[prost(message, optional, tag = "1")]
726 pub response_code: ::core::option::Option<
727 super::super::super::super::google::protobuf::UInt32Value,
728 >,
729 #[prost(uint64, tag = "2")]
734 pub response_headers_bytes: u64,
735 #[prost(uint64, tag = "3")]
740 pub response_body_bytes: u64,
741 #[prost(map = "string, string", tag = "4")]
743 pub response_headers: ::std::collections::HashMap<
744 ::prost::alloc::string::String,
745 ::prost::alloc::string::String,
746 >,
747 #[prost(map = "string, string", tag = "5")]
749 pub response_trailers: ::std::collections::HashMap<
750 ::prost::alloc::string::String,
751 ::prost::alloc::string::String,
752 >,
753 #[prost(string, tag = "6")]
755 pub response_code_details: ::prost::alloc::string::String,
756 #[prost(uint64, tag = "7")]
758 pub upstream_header_bytes_received: u64,
759 #[prost(uint64, tag = "8")]
761 pub downstream_header_bytes_sent: u64,
762}
763impl ::prost::Name for HttpResponseProperties {
764 const NAME: &'static str = "HTTPResponseProperties";
765 const PACKAGE: &'static str = "envoy.data.accesslog.v3";
766 fn full_name() -> ::prost::alloc::string::String {
767 "envoy.data.accesslog.v3.HTTPResponseProperties".into()
768 }
769 fn type_url() -> ::prost::alloc::string::String {
770 "type.googleapis.com/envoy.data.accesslog.v3.HTTPResponseProperties".into()
771 }
772}
773#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
774#[repr(i32)]
775pub enum AccessLogType {
776 NotSet = 0,
777 TcpUpstreamConnected = 1,
778 TcpPeriodic = 2,
779 TcpConnectionEnd = 3,
780 DownstreamStart = 4,
781 DownstreamPeriodic = 5,
782 DownstreamEnd = 6,
783 UpstreamPoolReady = 7,
784 UpstreamPeriodic = 8,
785 UpstreamEnd = 9,
786 DownstreamTunnelSuccessfullyEstablished = 10,
787 UdpTunnelUpstreamConnected = 11,
788 UdpPeriodic = 12,
789 UdpSessionEnd = 13,
790}
791impl AccessLogType {
792 pub fn as_str_name(&self) -> &'static str {
797 match self {
798 Self::NotSet => "NotSet",
799 Self::TcpUpstreamConnected => "TcpUpstreamConnected",
800 Self::TcpPeriodic => "TcpPeriodic",
801 Self::TcpConnectionEnd => "TcpConnectionEnd",
802 Self::DownstreamStart => "DownstreamStart",
803 Self::DownstreamPeriodic => "DownstreamPeriodic",
804 Self::DownstreamEnd => "DownstreamEnd",
805 Self::UpstreamPoolReady => "UpstreamPoolReady",
806 Self::UpstreamPeriodic => "UpstreamPeriodic",
807 Self::UpstreamEnd => "UpstreamEnd",
808 Self::DownstreamTunnelSuccessfullyEstablished => {
809 "DownstreamTunnelSuccessfullyEstablished"
810 }
811 Self::UdpTunnelUpstreamConnected => "UdpTunnelUpstreamConnected",
812 Self::UdpPeriodic => "UdpPeriodic",
813 Self::UdpSessionEnd => "UdpSessionEnd",
814 }
815 }
816 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
818 match value {
819 "NotSet" => Some(Self::NotSet),
820 "TcpUpstreamConnected" => Some(Self::TcpUpstreamConnected),
821 "TcpPeriodic" => Some(Self::TcpPeriodic),
822 "TcpConnectionEnd" => Some(Self::TcpConnectionEnd),
823 "DownstreamStart" => Some(Self::DownstreamStart),
824 "DownstreamPeriodic" => Some(Self::DownstreamPeriodic),
825 "DownstreamEnd" => Some(Self::DownstreamEnd),
826 "UpstreamPoolReady" => Some(Self::UpstreamPoolReady),
827 "UpstreamPeriodic" => Some(Self::UpstreamPeriodic),
828 "UpstreamEnd" => Some(Self::UpstreamEnd),
829 "DownstreamTunnelSuccessfullyEstablished" => {
830 Some(Self::DownstreamTunnelSuccessfullyEstablished)
831 }
832 "UdpTunnelUpstreamConnected" => Some(Self::UdpTunnelUpstreamConnected),
833 "UdpPeriodic" => Some(Self::UdpPeriodic),
834 "UdpSessionEnd" => Some(Self::UdpSessionEnd),
835 _ => None,
836 }
837 }
838}