Nomad
Nomad Autoscaler HTTP API
The Nomad Autoscaler exposes a small, simple API to be used for health checking the agent and obtaining metric data.
Health API
This endpoint can be used to query the Nomad Autoscaler agent aliveness. If the agent is alive, the request will return a 200 OK, otherwise it will return a 503 ServiceUnavailable.
Method | Path | Produces |
---|---|---|
GET | /v1/health | application/json |
Sample Request
$ curl https://localhost:8080/v1/health
Metrics API
The /metrics
endpoint returns metrics for the current Nomad Autoscaler process.
Method | Path | Produces |
---|---|---|
GET | /v1/metrics | application/json |
Parameters
format
(string: "")
- Specifies the metrics format to be other than the JSON default. Currently, onlyprometheus
is supported as an alternative format. This is specified as a query string parameter.
Sample Request
$ curl https://localhost:8080/v1/metrics
$ curl https://localhost:8080/v1/metrics?format=prometheus
Sample Response
{
"Counters": [
{
"Count": 1,
"Labels": {
"policy_source": "nomad"
},
"Max": 1,
"Mean": 1,
"Min": 1,
"Name": "nomad-autoscaler.policy.source.error_count",
"Rate": 0.1,
"Stddev": 0,
"Sum": 1
}
],
"Gauges": [
{
"Labels": {},
"Name": "nomad-autoscaler.pathfinder.policy.total_num",
"Value": 0
},
{
"Labels": {},
"Name": "nomad-autoscaler.pathfinder.runtime.alloc_bytes",
"Value": 7230328
},
{
"Labels": {},
"Name": "nomad-autoscaler.pathfinder.runtime.free_count",
"Value": 137217
},
{
"Labels": {},
"Name": "nomad-autoscaler.pathfinder.runtime.heap_objects",
"Value": 90821
},
{
"Labels": {},
"Name": "nomad-autoscaler.pathfinder.runtime.malloc_count",
"Value": 228038
},
{
"Labels": {},
"Name": "nomad-autoscaler.pathfinder.runtime.num_goroutines",
"Value": 15
},
{
"Labels": {},
"Name": "nomad-autoscaler.pathfinder.runtime.sys_bytes",
"Value": 75317504
},
{
"Labels": {},
"Name": "nomad-autoscaler.pathfinder.runtime.total_gc_pause_ns",
"Value": 293262
},
{
"Labels": {},
"Name": "nomad-autoscaler.pathfinder.runtime.total_gc_runs",
"Value": 4
}
],
"Points": [],
"Samples": [],
"Timestamp": "2020-08-25 10:25:20 +0000 UTC"
}