Metrics

Traefik provides metrics in the OpenTelemetry format as well as the following vendor specific backends:

Traefik Proxy has an official Grafana dashboard for both on-premises and Kubernetes deployments.


Open Telemetry

Default protocol

The OpenTelemetry exporter will export metrics to the collector using HTTP by default to https://localhost:4318/v1/metrics.

Configuration Example

To enable the OpenTelemetry metrics:

File (YAML)

  1. metrics:
  2. otlp: {}

File (TOML)

  1. [metrics]
  2. [metrics.otlp]

CLI

  1. --metrics.otlp=true

Helm Chart Values

  1. # values.yaml
  2. metrics:
  3. # Disable Prometheus (enabled by default)
  4. prometheus: null
  5. # Enable providing OTel metrics
  6. otlp:
  7. enabled: true
  8. http:
  9. enabled: true

Helm Chart Configuration

Traefik can be configured to provide metrics in the OpenTelemetry format using the Helm Chart values. To know more about the Helm Chart options, refer to the Helm Chart (Find options metrics.otlp).

Configuration Options

FieldDescriptionDefaultRequired
metrics.addInternalsEnables metrics for internal resources (e.g.: ping@internal).falseNo
metrics.otlp.addEntryPointsLabelsEnable metrics on entry points.trueNo
metrics.otlp.addRoutersLabelsEnable metrics on routers.falseNo
metrics.otlp.addServicesLabelsEnable metrics on services.trueNo
metrics.otlp.explicitBoundariesExplicit boundaries for Histogram data points.“.005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10”No
metrics.otlp.pushIntervalInterval at which metrics are sent to the OpenTelemetry Collector.10sNo
metrics.otlp.httpThis instructs the exporter to send the metrics to the OpenTelemetry Collector using HTTP.
Setting the sub-options with their default values.
null/falseNo
metrics.otlp.http.endpointURL of the OpenTelemetry Collector to send metrics to.
Format=”<scheme>://<host>:<port><path>
http://localhost:4318/v1/metricsYes
metrics.otlp.http.headersAdditional headers sent with metrics by the exporter to the OpenTelemetry Collector.-No
metrics.otlp.http.tls.caPath to the certificate authority used for the secure connection to the OpenTelemetry Collector,
it defaults to the system bundle.
“”No
metrics.otlp.http.tls.certPath to the public certificate used for the secure connection to the OpenTelemetry Collector.
When using this option, setting the key option is required.
“”No
metrics.otlp.http.tls.keyThis instructs the exporter to send the metrics to the OpenTelemetry Collector using HTTP.
Setting the sub-options with their default values.
null/falseNo
metrics.otlp.http.tls.insecureskipverifyAllow the TLS connection to the OpenTelemetry Collector accepts any certificate presented by the server regardless of the hostnames it covers.falseYes
metrics.otlp.grpcThis instructs the exporter to send metrics to the OpenTelemetry Collector using gRPC.null/falseNo
metrics.otlp.grpc.endpointAddress of the OpenTelemetry Collector to send metrics to.
Format=”<host>:<port>
“localhost:4317”Yes
metrics.otlp.grpc.headersAdditional headers sent with metrics by the exporter to the OpenTelemetry Collector.-No
metrics.otlp.http.grpc.insecureAllows exporter to send metrics to the OpenTelemetry Collector without using a secured protocol.falseYes
metrics.otlp.grpc.tls.caPath to the certificate authority used for the secure connection to the OpenTelemetry Collector,
it defaults to the system bundle.
-No
metrics.otlp.grpc.tls.certPath to the public certificate used for the secure connection to the OpenTelemetry Collector.
When using this option, setting the key option is required.
-No
metrics.otlp.grpc.tls.keyThis instructs the exporter to send the metrics to the OpenTelemetry Collector using HTTP.
Setting the sub-options with their default values.
null/falseNo
metrics.otlp.grpc.tls.insecureskipverifyAllow the TLS connection to the OpenTelemetry Collector accepts any certificate presented by the server regardless of the hostnames it covers.falseYes

Vendors

Datadog

Configuration Example

To enable the Datadog:

File (YAML)

  1. metrics:
  2. datadog: {}

File (TOML)

  1. [metrics]
  2. [metrics.datadog]

CLI

  1. --metrics.datadog=true

Configuration Options

FieldDescriptionDefaultRequired
metrics.addInternalsEnables metrics for internal resources (e.g.: ping@internal).falseNo
datadog.addressDefines the address for the exporter to send metrics to datadog-agent. More information here127.0.0.1:8125Yes
datadog.addEntryPointsLabelsEnable metrics on entry points.trueNo
datadog.addRoutersLabelsEnable metrics on routers.falseNo
datadog.addServicesLabelsEnable metrics on services.trueNo
datadog.pushIntervalDefines the interval used by the exporter to push metrics to datadog-agent.10sNo
datadog.prefixDefines the prefix to use for metrics collection.“traefik”No
address

Address instructs exporter to send metrics to datadog-agent at this address.

This address can be a Unix Domain Socket (UDS) in the following format: unix:///path/to/datadog.socket. When the prefix is set to unix, the socket type will be automatically determined. To explicitly define the socket type and avoid automatic detection, you can use the prefixes unixgram for SOCK_DGRAM (datagram sockets) and unixstream for SOCK_STREAM (stream sockets), respectively.

File (YAML)

  1. metrics:
  2. datadog:
  3. address: 127.0.0.1:8125

File (TOML)

  1. [metrics]
  2. [metrics.datadog]
  3. address = "127.0.0.1:8125"

CLI

  1. --metrics.datadog.address=127.0.0.1:8125

InfluxDB v2

Configuration Example

To enable the InfluxDB2:

File (YAML)

  1. metrics:
  2. influxDB2:
  3. address: http://localhost:8086

File (TOML)

  1. [metrics]
  2. [metrics.influxDB2]
  3. address: http://localhost:8086

CLI

  1. --metrics.influxdb2=true

Configuration Options

FieldDescriptionDefaultRequired
metrics.addInternalEnables metrics for internal resources (e.g.: ping@internal).falseNo
metrics.influxDB2.addEntryPointsLabelsEnable metrics on entry points.trueNo
metrics.influxDB2.addRoutersLabelsEnable metrics on routers.falseNo
metrics.influxDB2.addServicesLabelsEnable metrics on services.trueNo
metrics.influxDB2.additionalLabelsAdditional labels (InfluxDB tags) on all metrics.-No
metrics.influxDB2.pushIntervalThe interval used by the exporter to push metrics to InfluxDB server.10sNo
metrics.influxDB2.addressAddress of the InfluxDB v2 instance.http://localhost:8086Yes
metrics.influxDB2.tokenToken with which to connect to InfluxDB v2.-Yes
metrics.influxDB2.orgOrganisation where metrics will be stored.-Yes
metrics.influxDB2.bucketBucket where metrics will be stored.-Yes

Prometheus

Configuration Example

To enable the Prometheus:

File (YAML)

  1. metrics:
  2. prometheus:
  3. buckets:
  4. - 0.1
  5. - 0.3
  6. - 1.2
  7. - 5.0

File (TOML)

  1. [metrics]
  2. [metrics.prometheus]
  3. [metrics.prometheus.buckets]
  4. - 0.1
  5. - 0.3
  6. - 1.2
  7. - 5.0

CLI

  1. --metrics.prometheus=true

Configuration Options

FieldDescriptionDefaultRequired
metrics.prometheus.addInternalsEnables metrics for internal resources (e.g.: ping@internals).falseNo
metrics.prometheus.addEntryPointsLabelsEnable metrics on entry points.trueNo
metrics.prometheus.addRoutersLabelsEnable metrics on routers.falseNo
metrics.prometheus.addServicesLabelsEnable metrics on services.trueNo
metrics.prometheus.bucketsBuckets for latency metrics.“0.100000, 0.300000, 1.200000, 5.000000”No
metrics.prometheus.manualRoutingSet to true, it disables the default internal router in order to allow creating a custom router for the prometheus@internal service.falseNo
metrics.prometheus.entryPointTraefik Entrypoint name used to expose metrics.“traefik”No
metrics.prometheus.headerLabelsDefines extra labels extracted from request headers for the requests_total metrics.
More information here.
Yes
headerLabels

Defines the extra labels for the requests_total metrics, and for each of them, the request header containing the value for this label. If the header is not present in the request it will be added nonetheless with an empty value. The label must be a valid label name for Prometheus metrics, otherwise, the Prometheus metrics provider will fail to serve any Traefik-related metric.

How to provide the Host header value

The Host header is never present in the Header map of a request, as per go documentation says:

  1. // For incoming requests, the Host header is promoted to the
  2. // Request.Host field and removed from the Header map.

As a workaround, to obtain the Host of a request as a label, use instead the X-Forwarded-Host header.

Configuration Example

Here is an example of the entryPoint requests_total metric with an additional “useragent” label.

When configuring the label in Static Configuration:

Configuration

  1. # static_configuration.yaml
  2. metrics:
  3. prometheus:
  4. headerLabels:
  5. useragent: User-Agent

Request

  1. curl -H "User-Agent: foobar" http://localhost

Metric

  1. traefik_entrypoint_requests_total\{code="200",entrypoint="web",method="GET",protocol="http",useragent="foobar"\} 1

StatsD

Configuration Example

To enable the Statsd:

File (YAML)

  1. metrics:
  2. statsD:
  3. address: localhost:8125

File (TOML)

  1. [metrics]
  2. [metrics.statsD]
  3. address: localhost:8125

CLI

  1. --metrics.statsd=true

Configuration Options

FieldDescriptionDefaultRequired
metrics.addInternalsEnables metrics for internal resources (e.g.: ping@internals).falseNo
metrics.statsD.addEntryPointsLabelsEnable metrics on entry points.trueNo
metrics.statsD.addRoutersLabelsEnable metrics on routers.falseNo
metrics.statsD.addServicesLabelsEnable metrics on services.trueNo
metrics.statsD.pushIntervalThe interval used by the exporter to push metrics to DataDog server.10sNo
metrics.statsD.addressAddress instructs exporter to send metrics to statsd at this address.“127.0.0.1:8125”Yes
metrics.statsD.prefixThe prefix to use for metrics collection.“traefik”No

Metrics Provided

Global Metrics

OpenTelemetry

MetricTypeLabelsDescription
traefik_config_reloads_totalCountThe total count of configuration reloads.
traefik_config_last_reload_successGaugeThe timestamp of the last configuration reload success.
traefik_open_connectionsGaugeentrypoint, protocolThe current count of open connections, by entrypoint and protocol.
traefik_tls_certs_not_afterGaugeThe expiration date of certificates.

Prometheus

MetricTypeLabelsDescription
traefik_config_reloads_totalCountThe total count of configuration reloads.
traefik_config_last_reload_successGaugeThe timestamp of the last configuration reload success.
traefik_open_connectionsGaugeentrypoint, protocolThe current count of open connections, by entrypoint and protocol.
traefik_tls_certs_not_afterGaugeThe expiration date of certificates.

Datadog

MetricTypeLabelsDescription
config.reload.totalCountThe total count of configuration reloads.
config.reload.lastSuccessTimestampGaugeThe timestamp of the last configuration reload success.
open.connectionsGaugeentrypoint, protocolThe current count of open connections, by entrypoint and protocol.
tls.certs.notAfterTimestampGaugeThe expiration date of certificates.

InfluxDB2

MetricTypeLabelsDescription
traefik.config.reload.totalCountThe total count of configuration reloads.
traefik.config.reload.lastSuccessTimestampGaugeThe timestamp of the last configuration reload success.
traefik.open.connectionsGaugeentrypoint, protocolThe current count of open connections, by entrypoint and protocol.
traefik.tls.certs.notAfterTimestampGaugeThe expiration date of certificates.

StatsD

MetricTypeLabelsDescription
{prefix}.config.reload.totalCountThe total count of configuration reloads.
{prefix}.config.reload.lastSuccessTimestampGaugeThe timestamp of the last configuration reload success.
{prefix}.open.connectionsGaugeentrypoint, protocolThe current count of open connections, by entrypoint and protocol.
{prefix}.tls.certs.notAfterTimestampGaugeThe expiration date of certificates.

{prefix} Default Value

By default, {prefix} value is traefik.

Labels

Here is a comprehensive list of labels that are provided by the global metrics:

LabelDescriptionexample
entrypointEntrypoint that handled the connection“example_entrypoint”
protocolConnection protocol“TCP”

OpenTelemetry Semantic Conventions

Traefik Proxy follows official OpenTelemetry semantic conventions v1.23.1.

HTTP Server

MetricTypeLabelsDescription
http.server.request.durationHistogramerror.type, http.request.method, http.response.status_code, network.protocol.name, server.address, server.port, url.schemeDuration of HTTP server requests
Labels

Here is a comprehensive list of labels that are provided by the metrics:

LabelDescriptionexample
error.typeDescribes a class of error the operation ended with“500”
http.request.methodHTTP request method“GET”
http.response.status_codeHTTP response status code“200”
network.protocol.nameOSI application layer or non-OSI equivalent“http/1.1”
network.protocol.versionVersion of the protocol specified in network.protocol.name“1.1”
server.addressName of the local HTTP server that received the request“example.com”
server.portPort of the local HTTP server that received the request“80”
url.schemeThe URI scheme component identifying the used protocol“http”

HTTP Client

MetricTypeLabelsDescription
http.client.request.durationHistogramerror.type, http.request.method, http.response.status_code, network.protocol.name, server.address, server.port, url.schemeDuration of HTTP client requests
Labels

Here is a comprehensive list of labels that are provided by the metrics:

LabelDescriptionexample
error.typeDescribes a class of error the operation ended with“500”
http.request.methodHTTP request method“GET”
http.response.status_codeHTTP response status code“200”
network.protocol.nameOSI application layer or non-OSI equivalent“http/1.1”
network.protocol.versionVersion of the protocol specified in network.protocol.name“1.1”
server.addressName of the local HTTP server that received the request“example.com”
server.portPort of the local HTTP server that received the request“80”
url.schemeThe URI scheme component identifying the used protocol“http”

HTTP Metrics

On top of the official OpenTelemetry semantic conventions, Traefik provides its own metrics to monitor the incoming traffic.

EntryPoint Metrics

OpenTelemetry

MetricTypeLabelsDescription
traefik_entrypoint_requests_totalCountcode, method, protocol, entrypointThe total count of HTTP requests received by an entrypoint.
traefik_entrypoint_requests_tls_totalCounttls_version, tls_cipher, entrypointThe total count of HTTPS requests received by an entrypoint.
traefik_entrypoint_request_duration_secondsHistogramcode, method, protocol, entrypointRequest processing duration histogram on an entrypoint.
traefik_entrypoint_requests_bytes_totalCountcode, method, protocol, entrypointThe total size of HTTP requests in bytes handled by an entrypoint.
traefik_entrypoint_responses_bytes_totalCountcode, method, protocol, entrypointThe total size of HTTP responses in bytes handled by an entrypoint.

Prometheus

MetricTypeLabelsDescription
traefik_entrypoint_requests_totalCountcode, method, protocol, entrypointThe total count of HTTP requests received by an entrypoint.
traefik_entrypoint_requests_tls_totalCounttls_version, tls_cipher, entrypointThe total count of HTTPS requests received by an entrypoint.
traefik_entrypoint_request_duration_secondsHistogramcode, method, protocol, entrypointRequest processing duration histogram on an entrypoint.
traefik_entrypoint_requests_bytes_totalCountcode, method, protocol, entrypointThe total size of HTTP requests in bytes handled by an entrypoint.
traefik_entrypoint_responses_bytes_totalCountcode, method, protocol, entrypointThe total size of HTTP responses in bytes handled by an entrypoint.

Datadog

MetricTypeLabelsDescription
entrypoint.requests.totalCountcode, method, protocol, entrypointThe total count of HTTP requests received by an entrypoint.
entrypoint.requests.tls.totalCounttls_version, tls_cipher, entrypointThe total count of HTTPS requests received by an entrypoint.
entrypoint.request.duration.secondsHistogramcode, method, protocol, entrypointRequest processing duration histogram on an entrypoint.
entrypoint.requests.bytes.totalCountcode, method, protocol, entrypointThe total size of HTTP requests in bytes handled by an entrypoint.
entrypoint.responses.bytes.totalCountcode, method, protocol, entrypointThe total size of HTTP responses in bytes handled by an entrypoint.

InfluxDB2

MetricTypeLabelsDescription
traefik.entrypoint.requests.totalCountcode, method, protocol, entrypointThe total count of HTTP requests received by an entrypoint.
traefik.entrypoint.requests.tls.totalCounttls_version, tls_cipher, entrypointThe total count of HTTPS requests received by an entrypoint.
traefik.entrypoint.request.duration.secondsHistogramcode, method, protocol, entrypointRequest processing duration histogram on an entrypoint.
traefik.entrypoint.requests.bytes.totalCountcode, method, protocol, entrypointThe total size of HTTP requests in bytes handled by an entrypoint.
traefik.entrypoint.responses.bytes.totalCountcode, method, protocol, entrypointThe total size of HTTP responses in bytes handled by an entrypoint.

StatsD

MetricTypeLabelsDescription
{prefix}.entrypoint.requests.totalCountcode, method, protocol, entrypointThe total count of HTTP requests received by an entrypoint.
{prefix}.entrypoint.requests.tls.totalCounttls_version, tls_cipher, entrypointThe total count of HTTPS requests received by an entrypoint.
{prefix}.entrypoint.request.duration.secondsHistogramcode, method, protocol, entrypointRequest processing duration histogram on an entrypoint.
{prefix}.entrypoint.requests.bytes.totalCountcode, method, protocol, entrypointThe total size of HTTP requests in bytes handled by an entrypoint.
{prefix}.entrypoint.responses.bytes.totalCountcode, method, protocol, entrypointThe total size of HTTP responses in bytes handled by an entrypoint.

{prefix} Default Value

By default, {prefix} value is traefik.

Router Metrics

OpenTelemetry

MetricTypeLabelsDescription
traefik_router_requests_totalCountcode, method, protocol, router, serviceThe total count of HTTP requests handled by a router.
traefik_router_requests_tls_totalCounttls_version, tls_cipher, router, serviceThe total count of HTTPS requests handled by a router.
traefik_router_request_duration_secondsHistogramcode, method, protocol, router, serviceRequest processing duration histogram on a router.
traefik_router_requests_bytes_totalCountcode, method, protocol, router, serviceThe total size of HTTP requests in bytes handled by a router.
traefik_router_responses_bytes_totalCountcode, method, protocol, router, serviceThe total size of HTTP responses in bytes handled by a router.

Prometheus

MetricTypeLabelsDescription
traefik_router_requests_totalCountcode, method, protocol, router, serviceThe total count of HTTP requests handled by a router.
traefik_router_requests_tls_totalCounttls_version, tls_cipher, router, serviceThe total count of HTTPS requests handled by a router.
traefik_router_request_duration_secondsHistogramcode, method, protocol, router, serviceRequest processing duration histogram on a router.
traefik_router_requests_bytes_totalCountcode, method, protocol, router, serviceThe total size of HTTP requests in bytes handled by a router.
traefik_router_responses_bytes_totalCountcode, method, protocol, router, serviceThe total size of HTTP responses in bytes handled by a router.

Datadog

MetricTypeLabelsDescription
router.requests.totalCountcode, method, protocol, router, serviceThe total count of HTTP requests handled by a router.
router.requests.tls.totalCounttls_version, tls_cipher, router, serviceThe total count of HTTPS requests handled by a router.
router.request.duration.secondsHistogramcode, method, protocol, router, serviceRequest processing duration histogram on a router.
router.requests.bytes.totalCountcode, method, protocol, router, serviceThe total size of HTTP requests in bytes handled by a router.
router.responses.bytes.totalCountcode, method, protocol, router, serviceThe total size of HTTP responses in bytes handled by a router.

InfluxDB2

MetricTypeLabelsDescription
traefik.router.requests.totalCountcode, method, protocol, router, serviceThe total count of HTTP requests handled by a router.
traefik.router.requests.tls.totalCounttls_version, tls_cipher, router, serviceThe total count of HTTPS requests handled by a router.
traefik.router.request.duration.secondsHistogramcode, method, protocol, router, serviceRequest processing duration histogram on a router.
traefik.router.requests.bytes.totalCountcode, method, protocol, router, serviceThe total size of HTTP requests in bytes handled by a router.
traefik.router.responses.bytes.totalCountcode, method, protocol, router, serviceThe total size of HTTP responses in bytes handled by a router.

StatsD

MetricTypeLabelsDescription
{prefix}.router.requests.totalCountcode, method, protocol, router, serviceThe total count of HTTP requests handled by a router.
{prefix}.router.requests.tls.totalCounttls_version, tls_cipher, router, serviceThe total count of HTTPS requests handled by a router.
{prefix}.router.request.duration.secondsHistogramcode, method, protocol, router, serviceRequest processing duration histogram on a router.
{prefix}.router.requests.bytes.totalCountcode, method, protocol, router, serviceThe total size of HTTP requests in bytes handled by a router.
{prefix}.router.responses.bytes.totalCountcode, method, protocol, router, serviceThe total size of HTTP responses in bytes handled by a router.

{prefix} Default Value

By default, {prefix} value is traefik.

Service Metrics

OpenTelemetry

MetricTypeLabelsDescription
traefik_service_requests_totalCountcode, method, protocol, serviceThe total count of HTTP requests processed on a service.
traefik_service_requests_tls_totalCounttls_version, tls_cipher, serviceThe total count of HTTPS requests processed on a service.
traefik_service_request_duration_secondsHistogramcode, method, protocol, serviceRequest processing duration histogram on a service.
traefik_service_retries_totalCountserviceThe count of requests retries on a service.
traefik_service_server_upGaugeservice, urlCurrent service’s server status, 0 for a down or 1 for up.
traefik_service_requests_bytes_totalCountcode, method, protocol, serviceThe total size of requests in bytes received by a service.
traefik_service_responses_bytes_totalCountcode, method, protocol, serviceThe total size of responses in bytes returned by a service.

Prometheus

MetricTypeLabelsDescription
traefik_service_requests_totalCountcode, method, protocol, serviceThe total count of HTTP requests processed on a service.
traefik_service_requests_tls_totalCounttls_version, tls_cipher, serviceThe total count of HTTPS requests processed on a service.
traefik_service_request_duration_secondsHistogramcode, method, protocol, serviceRequest processing duration histogram on a service.
traefik_service_retries_totalCountserviceThe count of requests retries on a service.
traefik_service_server_upGaugeservice, urlCurrent service’s server status, 0 for a down or 1 for up.
traefik_service_requests_bytes_totalCountcode, method, protocol, serviceThe total size of requests in bytes received by a service.
traefik_service_responses_bytes_totalCountcode, method, protocol, serviceThe total size of responses in bytes returned by a service.

Datadog

MetricTypeLabelsDescription
service.requests.totalCountcode, method, protocol, serviceThe total count of HTTP requests processed on a service.
router.service.tls.totalCounttls_version, tls_cipher, serviceThe total count of HTTPS requests processed on a service.
service.request.duration.secondsHistogramcode, method, protocol, serviceRequest processing duration histogram on a service.
service.retries.totalCountserviceThe count of requests retries on a service.
service.server.upGaugeservice, urlCurrent service’s server status, 0 for a down or 1 for up.
service.requests.bytes.totalCountcode, method, protocol, serviceThe total size of requests in bytes received by a service.
service.responses.bytes.totalCountcode, method, protocol, serviceThe total size of responses in bytes returned by a service.

InfluxDB2

MetricTypeLabelsDescription
traefik.service.requests.totalCountcode, method, protocol, serviceThe total count of HTTP requests processed on a service.
traefik.service.requests.tls.totalCounttls_version, tls_cipher, serviceThe total count of HTTPS requests processed on a service.
traefik.service.request.duration.secondsHistogramcode, method, protocol, serviceRequest processing duration histogram on a service.
traefik.service.retries.totalCountserviceThe count of requests retries on a service.
traefik.service.server.upGaugeservice, urlCurrent service’s server status, 0 for a down or 1 for up.
traefik.service.requests.bytes.totalCountcode, method, protocol, serviceThe total size of requests in bytes received by a service.
traefik.service.responses.bytes.totalCountcode, method, protocol, serviceThe total size of responses in bytes returned by a service.

StatsD

MetricTypeLabelsDescription
{prefix}.service.requests.totalCountcode, method, protocol, serviceThe total count of HTTP requests processed on a service.
{prefix}.service.requests.tls.totalCounttls_version, tls_cipher, serviceThe total count of HTTPS requests processed on a service.
{prefix}.service.request.duration.secondsHistogramcode, method, protocol, serviceRequest processing duration histogram on a service.
{prefix}.service.retries.totalCountserviceThe count of requests retries on a service.
{prefix}.service.server.upGaugeservice, urlCurrent service’s server status, 0 for a down or 1 for up.
{prefix}.service.requests.bytes.totalCountcode, method, protocol, serviceThe total size of requests in bytes received by a service.
{prefix}.service.responses.bytes.totalCountcode, method, protocol, serviceThe total size of responses in bytes returned by a service.

{prefix} Default Value

By default, {prefix} value is traefik.

Labels

Here is a comprehensive list of labels that are provided by the metrics:

LabelDescriptionexample
cnCertificate Common Name“example.com”
codeRequest code“200”
entrypointEntrypoint that handled the request“example_entrypoint”
methodRequest Method“GET”
protocolRequest protocol“http”
routerRouter that handled the request“example_router”
sansCertificate Subject Alternative NameS“example.com”
serialCertificate Serial Number“123…”
serviceService that handled the request“example_service@provider”
tls_cipherTLS cipher used for the request“TLS_FALLBACK_SCSV”
tls_versionTLS version used for the request“1.0”
urlService server urlhttp://example.com

method label value

If the HTTP method verb on a request is not one defined in the set of common methods for HTTP/1.1 or the PRI verb (for HTTP/2), then the value for the method label becomes EXTENSION_METHOD.