Monitoring

AWTS modules expose healthcheck and performance monitoring endpoints for use with your network management tooling.

Note: This page relates to service health/status monitoring as part of ensuring the AWTS environment is health and sufficiently performant. For trade performance/P&L monitoring, see the Results service.

Healthcheck endpoint

All AWTS modules expose a healthcheck endpoint at /health which can be used with any standard uptime/availability monitoring tool to manage application health.

It returns standard HTTP response codes (i.e. 2xx Ok, 5xx Error), and a basic JSON health structure compliant with the IETF draft standard for healthchecks:

Note that each service exposes its own healthcheck. mux does not (yet!) aggregate health across all running services - you should poll them independently if this is relevant to your SLA obligations.

❯ curl http://localhost:35000/health
{"status":"pass","version":"1.0.0","releaseId":"1.0.0"}

Metrics

All AWTS modules expose a metrics endpoint at /metrics which can be used with Prometheus or any other compatible metrics.

Many (hundreds) of metrics are exposed. Metrics prefixed with awts_ are specific to AWTS functionality such as fetching price data. Metrics prefixed with rtas_ or other symbols relate to other useful data; e.g. the API request rate as shown below.

Note that each module exposes its own metrics. mux does not proxy and aggregate metrics from the services behind it - so you should configure Prometheus/etc to poll each service separately.

❯ curl http://localhost:35000/metrics
...
<snip>
...
# HELP rtas_requests_total 
# TYPE rtas_requests_total counter
rtas_requests_total{code="404",kind="grpc"} 154
rtas_requests_total{code="404",kind="http"} 1