Menu

This is documentation for the next version of Alloy. For the latest stable release, go to the latest version.

Open source RSS

The Grafana Alloy HTTP endpoints

Grafana Alloy has several default HTTP endpoints that are available by default regardless of which components you have configured. You can use these HTTP endpoints to monitor, health check, and troubleshoot Alloy.

The HTTP server which exposes them is configured via the http block and the --server. command line arguments. For example, if you set the --server.http.listen-addr command line argument to 127.0.0.1:12345, you can query the 127.0.0.1:12345/metrics endpoint to see the internal metrics of Alloy.

/metrics

The /metrics endpoint returns the internal metrics of Alloy in the Prometheus exposition format.

/-/ready

An Alloy instance is ready once it has loaded its initial configuration. If the instance is ready, the /-/ready endpoint returns HTTP 200 OK and the message Alloy is ready. Otherwise, if the instance is not ready, the /-/ready endpoint returns HTTP 503 Service Unavailable and the message Alloy is not ready.

/-/healthy

When all Alloy components are working correctly, all components are considered healthy. If all components are healthy, the /-/healthy endpoint returns HTTP 200 OK and the message All Alloy components are healthy.. Otherwise, if any of the components are not working correctly, the /-/healthy endpoint returns HTTP 500 Internal Server Error and an error message. You can also monitor component health through the Alloy UI.

shell
$ curl localhost:12345/-/healthy
All Alloy components are healthy.
shell
$ curl localhost:12345/-/healthy
unhealthy components: math.add

Note

The /-/healthy endpoint isn’t suitable for a Kubernetes liveness probe.

An Alloy instance that reports as unhealthy should not necessarily be restarted. For example, a component may be unhealthy due to an invalid configuration or an unavailable external resource. In this case, restarting Alloy would not fix the problem. A restart may make it worse, because it would could stop the flow of telemetry in healthy pipelines.

/-/reload

The /-/reload endpoint reloads the Alloy configuration file. If the configuration file can’t be reloaded, the /-/reload endpoint returns HTTP 400 Bad Request and an error message.

shell
$ curl localhost:12345/-/reload
config reloaded
shell
$ curl localhost:12345/-/reload
error during the initial load: /Users/user1/Desktop/git.alloy:13:1: Failed to build component: loading custom component controller: custom component config not found in the registry, namespace: "math", componentName: "add"

/-/support

The /-/support endpoint returns a support bundle that contains information about your Alloy instance. You can use this information as a baseline when debugging an issue.

/debug/pprof

The /debug/pprof endpoint returns a pprof Go profile that you can use to visualize and analyze profiling data.