Skip to content

docs: add Apache APISIX to software exposing Prometheus metrics - #3064

Merged
jan--f merged 3 commits into
prometheus:mainfrom
Yilialinn:docs-add-apache-apisix-prometheus
Aug 12, 2026
Merged

docs: add Apache APISIX to software exposing Prometheus metrics#3064
jan--f merged 3 commits into
prometheus:mainfrom
Yilialinn:docs-add-apache-apisix-prometheus

Conversation

@Yilialinn

Copy link
Copy Markdown
Contributor

Summary

  • add Apache APISIX to the list of software exposing Prometheus metrics;
  • link to the maintained Apache APISIX Prometheus plugin reference; and
  • mark it as directly instrumented with a Prometheus client library.

Apache APISIX registers gateway metrics through its bundled
nginx-lua-prometheus-api7 client library and exposes them from its
first-party prometheus plugin, so no separate exporter is required. The
entry is placed in the same section as other software with directly
instrumented Prometheus endpoints.

Representative output from Apache APISIX 3.17.0:

# HELP apisix_http_latency HTTP request latency in milliseconds per service in APISIX
# TYPE apisix_http_latency histogram
apisix_http_latency_count{type="request",route="checkout-route",service="checkout",consumer="",node="172.18.0.2",request_type="traditional_http",request_llm_model="",llm_model=""} 4

# HELP apisix_http_status HTTP status codes per service in APISIX
# TYPE apisix_http_status counter
apisix_http_status{code="200",route="checkout-route",matched_uri="/status/*",matched_host="",service="checkout",consumer="",node="172.18.0.2",request_type="traditional_http",request_llm_model="",llm_model="",response_source="upstream"} 2

Validation:

  • the sample was captured from a version-pinned Apache APISIX 3.17.0 Docker
    environment after requests reached a test upstream
  • promtool 3.13.2 check metrics reports that the existing
    apisix_http_status counter does not use the recommended _total suffix
  • apisix_http_latency reports milliseconds, while Prometheus recommends base
    units and unit suffixes for metric names

These are existing APISIX metric-convention gaps. This directory change does
not modify the metric surface or claim full compliance with Prometheus naming
guidance.

Disclosure: I am an Apache APISIX Committer.

@RichiH, could you review this small integrations-directory addition when you
have time?

Signed-off-by: Yilia Lin <Yilialin@apache.org>
@Yilialinn
Yilialinn force-pushed the docs-add-apache-apisix-prometheus branch from c86379a to f264ca2 Compare August 12, 2026 09:54
@roidelapluie

Copy link
Copy Markdown
Member

This does not seem to be direct which is for users of prometheus official libraries (which do not exist for lua).

Signed-off-by: Yilia Lin <Yilialin@apache.org>

@jan--f jan--f left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm, the build failure has been addressed on main.

@jan--f
jan--f merged commit 93fc8b9 into prometheus:main Aug 12, 2026
6 checks passed
@Yilialinn
Yilialinn deleted the docs-add-apache-apisix-prometheus branch August 13, 2026 01:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants