-
Notifications
You must be signed in to change notification settings - Fork 340
Description
Describe the bug
The current telemetry docs has misleading information about the metrics endpoint that may cause confusion for users setting up Prometheus scraping.
Issues Found
- Port number may be incorrect
The documentation states:
"they are available from Polaris's management interface (port 8282 by default)"
However, in our deployment (and checking the default configuration), the management port is 8182, not 8282.
- Incomplete endpoint documentation
The documentation only mentions /q/metrics:
"under the path /q/metrics. For example, if the server is running on localhost, the metrics can be accessed via http://localhost:8282/q/metrics"
However, Quarkus with Micrometer also exposes metrics at /metrics (the standard Prometheus endpoint), which is not documented.
Testing Results
When testing against a running Polaris 1.0 instance:
Both endpoints return identical metrics
curl localhost:8182/metrics # ✅ Works (standard Prometheus path)
curl localhost:8182/q/metrics # ✅ Works (Quarkus-specific path)
Both endpoints return the exact same metric data.
Why This Matters
- Standard Prometheus tooling expects /metrics - Most Prometheus configurations, ServiceMonitors, and scraping tools default to /metrics, not /q/metrics
- Port confusion - Users may waste time troubleshooting connectivity if the port number is wrong
- Real-world impact - In our case, our infrastructure was already scraping /metrics successfully, but the documentation made us question if we had configured it correctly
Suggested Documentation Fix
Update the telemetry documentation to:
- Correct the port number (or clarify it's configurable):
Metrics are available from Polaris's management interface (port 8182 by default, configurable via quarkus.management.port) - Document both endpoints:
Metrics are exposed at two paths:
- /metrics - Standard Prometheus endpoint (recommended for most use cases)
- /q/metrics - Quarkus-specific management endpoint
Both paths return identical metrics. For example, if the server is running on localhost:
- Add a note about Prometheus scraping:
Note: Standard Prometheus configurations and Kubernetes ServiceMonitors typically use /metrics by default.
Environment
- Polaris Version: 1.2
- Runtime: Quarkus 3.25.4
- Deployment: Kubernetes
Happy to contribute the fix if everyone of us agree to this