HTTP Connection
- proxy.process.current_server_connections
- Collection:
- global
- Type:
- gauge
- Datatype:
- integer
- proxy.process.http.user_agent_total_request_bytes
- Collection:
- global
- Type:
- counter
- Units:
- bytes
- Datatype:
- integer
- proxy.process.http.user_agent_total_response_bytes
- Collection:
- global
- Type:
- counter
- Units:
- bytes
- Datatype:
- integer
- proxy.process.http.broken_server_connections
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.http.completed_requests
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.http.connect_requests
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.http.current_active_client_connections
- Collection:
- global
- Type:
- gauge
- Datatype:
- integer
Represents the current number of HTTP/1.0 and HTTP/1.1 connections from client to the Traffic Server.
- proxy.process.http.current_cache_connections
- Collection:
- global
- Type:
- gauge
- Datatype:
- integer
- Gathered:
- No
- proxy.process.http.current_client_connections
- Collection:
- global
- Type:
- gauge
- Datatype:
- integer
- proxy.process.http.current_client_transactions
- Collection:
- global
- Type:
- gauge
- Datatype:
- integer
Represents the current number of HTTP/1.0 and HTTP/1.1 transactions from client to the Traffic Server.
- proxy.process.http.current_server_connections
- Collection:
- global
- Type:
- gauge
- Datatype:
- integer
- proxy.process.http.current_server_transactions
- Collection:
- global
- Type:
- gauge
- Datatype:
- integer
- proxy.process.http.err_client_abort_count
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.http.err_client_abort_origin_server_bytes
- Collection:
- global
- Type:
- counter
- Units:
- bytes
- Datatype:
- integer
- proxy.process.http.err_client_abort_user_agent_bytes
- Collection:
- global
- Type:
- counter
- Units:
- bytes
- Datatype:
- integer
- proxy.process.http.err_client_read_error_count
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.http.err_client_read_error_origin_server_bytes
- Collection:
- global
- Type:
- counter
- Units:
- bytes
- Datatype:
- integer
- proxy.process.http.err_client_read_error_user_agent_bytes
- Collection:
- global
- Type:
- counter
- Units:
- bytes
- Datatype:
- integer
- proxy.process.http.err_connect_fail_count
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- Gathered:
- No
- proxy.process.http.err_connect_fail_origin_server_bytes
- Collection:
- global
- Type:
- counter
- Units:
- bytes
- Datatype:
- integer
- Gathered:
- No
- proxy.process.http.err_connect_fail_user_agent_bytes
- Collection:
- global
- Type:
- counter
- Units:
- bytes
- Datatype:
- integer
- Gathered:
- No
- proxy.process.http.http_misc_origin_server_bytes
- Collection:
- global
- Type:
- counter
- Units:
- bytes
- Datatype:
- integer
- proxy.process.http.incoming_requests
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.http.incoming_responses
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.https.incoming_requests
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.https.total_client_connections
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.http.total_client_connections
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.http.total_client_connections_ipv4
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.http.total_client_connections_ipv6
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.http.total_client_connections_uds
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.http.total_incoming_connections
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.http.total_parent_marked_down_count
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Tracks the number of times a parent was marked down.
- proxy.process.http.total_parent_marked_down_timeout
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Tracks the number of times a parent was marked down due to a inactivity timeout.
- proxy.process.http.total_server_connections
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
- proxy.process.http.origin_connections_throttled_out
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
This tracks the number of origin connections denied due to being over the proxy.config.http.per_server.connection.max limit.
- proxy.process.http.pooled_server_connections
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
This metric tracks the number of server connections currently in the server session sharing pools. The server session sharing is
controlled by settings proxy.config.http.server_session_sharing.pool and proxy.config.http.server_session_sharing.match.
- proxy.process.http.down_server.no_requests
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Tracks the number of client requests that did not have a request sent to the origin server because the origin server was marked down.
- proxy.process.http.http_proxy_loop_detected
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Counts the number of times a proxy loop was detected
- proxy.process.http.http_proxy_mh_loop_detected
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Counts the number of times a multi-hop proxy loop was detected
- proxy.process.http_parent_count
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Counts the number of times current parent or next parent was detected
- proxy.process.tunnel.total_client_connections_blind_tcp
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Total number of non-TLS TCP connections for tunnels where the far end is the client initiated with an HTTP request (such as a CONNECT or WebSocket request).
- proxy.process.tunnel.current_client_connections_blind_tcp
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Current number of non-TLS TCP connections for tunnels where the far end is the client initiated with an HTTP request (such as a CONNECT or WebSocket request).
- proxy.process.tunnel.total_server_connections_blind_tcp
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Total number of TCP connections for tunnels where the far end is the server,
except for those counted by proxy.process.tunnel.total_server_connections_tls
- proxy.process.tunnel.current_server_connections_blind_tcp
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Current number of TCP connections for tunnels where the far end is the server,
except for those counted by proxy.process.tunnel.current_server_connections_tls
Per Server Connection Metrics
Unlike the metrics above these do not have fixed names. They are created dynamically, one set per
upstream server group as defined by proxy.config.http.per_server.connection.match, and,
when the match type is both, one aggregate set per hostname. Whether they are collected at all is
controlled by proxy.config.http.per_server.connection.metric_enabled, and which of them are
published by proxy.config.http.per_server.connection.metric_aggregate. An optional
proxy.config.http.per_server.connection.metric_prefix can be inserted into the names.
Per group names are proxy.process.http.per_server.<counter>.<group>, where <group> depends on
the match type: an IP address, an address:port pair, a hostname, or, for both,
<hostname>.<address:port>. Per hostname names are
proxy.process.http.per_server.<counter>.<hostname>. Aggregates exist only for match type
both, because that is the only match type whose group key carries the hostname. An ip or
port group is keyed on the address alone and is shared by every hostname that resolves to it, so
there is no single hostname to aggregate it under. For match type host the group name is already
the bare hostname, so an aggregate would carry the same name as the single group it summarises.
For a group, <counter> is one of:
- current_connection
Gauge. The number of connections currently open to the group.
- total_connection
Counter. The total number of connections ever opened to the group. Never decreases.
- blocked_connection
Counter. The total number of connection attempts to the group blocked by
proxy.config.http.per_server.connection.max. Never decreases.
For a hostname aggregate, <counter> is one of those three, each summed across the groups of that
hostname which have aggregation enabled, plus:
- current_connection_max
Gauge. The largest
current_connectionvalue among the groups of that hostname at the moment of sampling, so the maximum rather than the sum of the groups' current counts. This is useful becauseproxy.config.http.per_server.connection.maxis enforced per group rather than per hostname, so the busiest group is what determines whether connections are about to be blocked. Likecurrent_connectionit rises and falls with traffic and is not a high-water mark. There is no per groupcurrent_connection_max; it exists only as a hostname aggregate.
Because proxy.config.http.per_server.connection.metric_aggregate is overridable, a group
joins its hostname's aggregate only if the mapping that first opened that upstream had aggregation
enabled. Mappings that disagree for one hostname therefore produce an aggregate over part of it: the
sums cover a subset of the groups and current_connection_max takes its maximum over that same
subset, with nothing in the metric to indicate it. Keeping the setting uniform across the mappings
for a hostname avoids this.
Because proxy.config.http.per_server.connection.match is also overridable, one hostname can
use match type host on one mapping and both on another. The host group and the hostname
aggregate are then published under the same name and merged into a single metric that carries both,
so a hostname should use one match type throughout.
Every published per server metric is recomputed periodically, currently every 5 seconds, rather than
on every connection event, so a reader sees a value up to that interval old. This is true of the
hostname aggregates and of the published per group metrics alike: those are
mirrored from the internal ones by the same periodic mechanism, not written as connections open and
close. It applies to current_connection_max too, which reports the maximum across groups as of
the last sample rather than a running peak. To obtain the peak over a longer window, compute a
maximum over time from this gauge in the monitoring system.
At metric_aggregate value 2
the per group metrics still exist internally, since the aggregates are computed from them, but are not
published. They can be listed with traffic_ctl metric match per_server --include-hidden, which
reads them directly and so is not subject to the sampling delay above. That visibility is intended
for debugging and is not a stable interface: the existence, granularity and naming of the per group
metrics may change independently of the published aggregates.
HTTP/2
- proxy.process.http2.total_client_connections
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of HTTP/2 connections from client to the Traffic Server.
- proxy.process.http2.current_client_connections
- Collection:
- global
- Type:
- gauge
- Datatype:
- integer
Represents the current number of HTTP/2 connections from client to the Traffic Server.
- proxy.process.http2.current_active_client_connections
- Collection:
- global
- Type:
- gauge
- Datatype:
- integer
Represents the current number of HTTP/2 active connections from client to the Traffic Server.
- proxy.process.http2.total_server_connections
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of HTTP/2 connections from Traffic Server to the origin.
- proxy.process.http2.current_server_connections
- Collection:
- global
- Type:
- gauge
- Datatype:
- integer
Represents the current number of HTTP/2 connections from Traffic Server to the origin.
- proxy.process.http2.current_active_server_connections
- Collection:
- global
- Type:
- gauge
- Datatype:
- integer
Represents the current number of HTTP/2 active connections from Traffic Server to the origin.
- proxy.process.http2.connection_errors
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of HTTP/2 connections errors.
- proxy.process.http2.session_die_default
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of closed HTTP/2 connections with
VC_EVENT_NONE event.
- proxy.process.http2.session_die_active
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of closed HTTP/2 connections with
VC_EVENT_ACTIVE_TIMEOUT event.
- proxy.process.http2.session_die_inactive
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of closed HTTP/2 connections with
VC_EVENT_INACTIVITY_TIMEOUT event.
- proxy.process.http2.session_die_eos
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of closed HTTP/2 connections with
VC_EVENT_EOS event.
- proxy.process.http2.session_die_error
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of closed HTTP/2 connections with
VC_EVENT_ERROR event.
- proxy.process.http2.session_die_other
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of closed HTTP/2 connections with unknown event.
- proxy.process.http2.session_die_high_error_rate
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of closed HTTP/2 connections with high
error rate which is configured by proxy.config.http2.stream_error_rate_threshold.
- proxy.process.http2.max_settings_per_frame_exceeded
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of closed HTTP/2 connections for exceeding the
maximum allowed number of settings per frame limit which is configured by
proxy.config.http2.max_settings_per_frame.
- proxy.process.http2.max_settings_per_minute_exceeded
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of closed HTTP/2 connections for exceeding the
maximum allowed number of settings per minute limit which is configured by
proxy.config.http2.max_settings_per_minute.
- proxy.process.http2.max_settings_frames_per_minute_exceeded
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of closed HTTP/2 connections for exceeding the
maximum allowed number of settings frames per minute limit which is configured by
proxy.config.http2.max_settings_frames_per_minute.
- proxy.process.http2.max_ping_frames_per_minute_exceeded
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of closed HTTP/2 connections for exceeding the
maximum allowed number of ping frames per minute limit which is configured by
proxy.config.http2.max_ping_frames_per_minute.
- proxy.process.http2.max_priority_frames_per_minute_exceeded
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of closed HTTP/2 connections for exceeding the
maximum allowed number of priority frames per minute limit which is configured by
proxy.config.http2.max_priority_frames_per_minute.
- proxy.process.http2.max_rst_stream_frames_per_minute_exceeded
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of HTTP/2 connections closed for exceeding the
maximum allowed number of RST_STREAM frames per minute limit which is configured by
proxy.config.http2.max_rst_stream_frames_per_minute.
- proxy.process.http2.max_continuation_frames_per_minute_exceeded
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of HTTP/2 connections closed for exceeding the
maximum allowed number of CONTINUATION frames per minute limit which is
configured by proxy.config.http2.max_continuation_frames_per_minute.
- proxy.process.http2.insufficient_avg_window_update
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the total number of closed HTTP/2 connections for not reaching the
minimum average window increment limit which is configured by
proxy.config.http2.min_avg_window_update.
- proxy.process.http2.max_concurrent_streams_exceeded_in
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the number of times an inbound HTTP/2 stream was not created for
reaching the maximum number of concurrent streams per inbound connection
configured by proxy.config.http2.max_concurrent_streams_in.
- proxy.process.http2.max_concurrent_streams_exceeded_out
- Collection:
- global
- Type:
- counter
- Datatype:
- integer
Represents the number of times an outbound HTTP/2 stream was not created for reaching the maximum number of concurrent streams per outbound connection the client can initiate as specified by the server.