.. _config_listener_stats: Statistics ========== Listener -------- Every listener has a statistics tree rooted at *listener.
.* (or *listener..* if :ref:`stat_prefix ` is non-empty) with the following statistics: .. csv-table:: :header: Name, Type, Description :widths: 1, 1, 2 downstream_cx_total, Counter, Total connections downstream_cx_destroy, Counter, Total destroyed connections downstream_cx_active, Gauge, Total active connections downstream_cx_length_ms, Histogram, Connection length milliseconds downstream_cx_transport_socket_connect_timeout, Counter, Total connections that timed out during transport socket connection negotiation downstream_cx_overflow, Counter, Total connections rejected due to enforcement of listener connection limit downstream_cx_overload_reject, Counter, Total connections rejected due to configured overload actions downstream_global_cx_overflow, Counter, Total connections rejected due to enforcement of global connection limit connections_accepted_per_socket_event, Histogram, Number of connections accepted per listener socket event downstream_pre_cx_timeout, Counter, Sockets that timed out during listener filter processing downstream_pre_cx_active, Gauge, Sockets currently undergoing listener filter processing extension_config_missing, Counter, Total connections closed due to missing listener filter extension configuration network_extension_config_missing, Counter, Total connections closed due to missing network filter extension configuration global_cx_overflow, Counter, Total connections rejected due to enforcement of the global connection limit no_filter_chain_match, Counter, Total connections that didn't match any filter chain downstream_listener_filter_remote_close, Counter, Total connections closed by remote when peek data for listener filters downstream_listener_filter_error, Counter, Total numbers of read errors when peeking data for listener filters .. _config_listener_stats_tls: TLS statistics -------------- The following TLS statistics are rooted at *listener.
.ssl.*: .. include:: ../../_include/ssl_stats.rst .. _config_listener_stats_tcp: TCP statistics -------------- The following TCP statistics, which are available when using the :ref:`TCP stats transport socket `, are rooted at *listener.
.tcp_stats.*: .. include:: ../../_include/tcp_stats.rst .. _config_listener_stats_udp: UDP statistics -------------- The following UDP statistics are available for UDP listeners and are rooted at *listener.
.udp.*: .. csv-table:: :header: Name, Type, Description :widths: 1, 1, 2 downstream_rx_datagram_dropped, Counter, Number of datagrams dropped due to kernel overflow or truncation .. _config_listener_stats_quic: QUIC statistics --------------- The following QUIC statistics, which are available when using the :ref:`QUIC stats debug visitor `, are rooted at *listener.
.quic_stats.*: .. csv-table:: :header: Name, Type, Description :widths: 1, 1, 2 cx_tx_packets_total, Counter, Total packets transmitted cx_tx_packets_retransmitted_total, Counter, Total packets retransmitted cx_tx_amplification_throttling_total, Counter, Total number of packets throttled during the server handshake response. This often indicates that the TLS certificate chain is too long to be transmitted without an additional network round trip. cx_rx_packets_total, Counter, Total number of packets received cx_path_degrading_total, Counter, Number of times that network path degradation was detected cx_forward_progress_after_path_degrading_total, Counter, Number of times that forward progress was made after the path degraded cx_rtt_us, Histogram, Smoothed round trip time estimate in microseconds cx_tx_estimated_bandwidth, Histogram, Estimated connection bandwith in bytes per second cx_tx_percent_retransmitted_packets, Histogram, Percent of packets on a connection which were retransmistted cx_tx_mtu, Histogram, The maximum packet size that will be sent for a connection cx_rx_mtu, Histogram, The size of the largest packet received from the peer .. _config_listener_stats_per_handler: Per-handler Listener Stats -------------------------- Every listener additionally has a statistics tree rooted at *listener.
..* which contains *per-handler* statistics. As described in the :ref:`threading model ` documentation, Envoy has a threading model which includes the *main thread* as well as a number of *worker threads* which are controlled by the :option:`--concurrency` option. Along these lines, ** is equal to *main_thread*, *worker_0*, *worker_1*, etc. These statistics can be used to look for per-handler/worker imbalance on either accepted or active connections. .. csv-table:: :header: Name, Type, Description :widths: 1, 1, 2 downstream_cx_total, Counter, Total connections on this handler. downstream_cx_active, Gauge, Total active connections on this handler. .. _config_listener_manager_stats: Listener manager ---------------- The listener manager has a statistics tree rooted at *listener_manager.* with the following statistics. Any ``:`` character in the stats name is replaced with ``_``. .. csv-table:: :header: Name, Type, Description :widths: 1, 1, 2 listener_added, Counter, Total listeners added (either via static config or LDS). listener_modified, Counter, Total listeners modified (via LDS). listener_removed, Counter, Total listeners removed (via LDS). listener_stopped, Counter, Total listeners stopped. listener_create_success, Counter, Total listener objects successfully added to workers. listener_create_failure, Counter, Total failed listener object additions to workers. listener_in_place_updated, Counter, Total listener objects created to execute filter chain update path. total_filter_chains_draining, Gauge, Number of currently draining filter chains. total_listeners_warming, Gauge, Number of currently warming listeners. total_listeners_active, Gauge, Number of currently active listeners. total_listeners_draining, Gauge, Number of currently draining listeners. workers_started, Gauge, A boolean (1 if started and 0 otherwise) that indicates whether listeners have been initialized on workers.