syntax = "proto3"; package envoy.extensions.transport_sockets.tcp_stats.v3; import "envoy/config/core/v3/base.proto"; import "google/protobuf/duration.proto"; import "udpa/annotations/status.proto"; import "validate/validate.proto"; option java_package = "io.envoyproxy.envoy.extensions.transport_sockets.tcp_stats.v3"; option java_outer_classname = "TcpStatsProto"; option java_multiple_files = true; option go_package = "github.com/envoyproxy/go-control-plane/envoy/extensions/transport_sockets/tcp_stats/v3;tcp_statsv3"; option (udpa.annotations.file_status).package_version_status = ACTIVE; // [#protodoc-title: TCP Stats Transport Socket wrapper] // [#extension: envoy.transport_sockets.tcp_stats] // Configuration for the TCP Stats transport socket wrapper, which wraps another transport socket for // all communication, but emits stats about the underlying TCP connection. // // The stats are documented :ref:`here ` for listeners and // :ref:`here ` for clusters. // // This transport socket is currently only supported on Linux. message Config { // The underlying transport socket being wrapped. config.core.v3.TransportSocket transport_socket = 1 [(validate.rules).message = {required: true}]; // Period to update stats while the connection is open. If unset, updates only happen when the // connection is closed. Stats are always updated one final time when the connection is closed. google.protobuf.Duration update_period = 2 [(validate.rules).duration = {gte {nanos: 1000000}}]; }