Skip to content

Missing latency by HTTP status code for Knative Serving with Kourier #16219

@gtupak

Description

@gtupak

Ask your question here:

I'm trying to monitor request latency for my Knative services broken down by HTTP response code (or response code class like 2xx, 4xx, 5xx), similar to how I can monitor RPS.

The Envoy metrics envoy_cluster_external_upstream_rq_time_sum and envoy_cluster_external_upstream_rq_time_count don't include the envoy_response_code or envoy_response_code_class labels, so I cannot break down latency by response status.

I've checked:

  • envoy_cluster_external_upstream_rq_time_* - no response code labels
  • envoy_cluster_upstream_rq_time_* - no response code labels
  • envoy_http_downstream_rq_time_* - no cluster-specific or response code labels
  • kn_revision_* metrics - these track autoscaler metrics but not request latency

What is the recommended way to monitor request latency per response code (or response code class) for Knative services?

Environment

  • Knative Serving version: [your version]
  • Ingress: Kourier (3scale-kourier-gateway)
  • Monitoring: Prometheus + Grafana

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/questionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions