Monitoring Tools
When deployed inside an infrastructure providing monitoring dashboard and tools, Cells provides some specific entry points for grabbing statistics and healtcheck information.
Healthcheck Endpoint
Cells provides an optional HTTP endpoint that lists all micro-services and their statuses (in JSON format). If all services are up and running, endpoint returns with a 200 status code, and a 500 if one service is down.
To enable this endpoint, pass a port number via the CELLS_HEALTHCHECK=6565
environment variable (or via the --healthcheck command flag). Once set, healthcheck endpoint is available with a GET http://your-cells:6565/healthcheck/
request.
Basic Authentication is available by setting the following configuration :
./cells admin config set pydio.grpc.healthcheck username "myusername"
./cells admin config set pydio.grpc.healthcheck password "mypassword"
Please beware that this endpoint is not protected by default: it is your responsibility to correctly setup your firewall or use the basic authentication.
Prometheus / OpenMetrics
Cells code is instrumented with Prometheus gauges for providing metrics about its internals (Golang Goroutines number, memory used per service, etc.). It is best coupled with a Grafana monitoring dashboard.
Prerequisites to collect the metrics are the following:
- Enable the metrics endpoints on Cells by providing the
CELLS_ENABLE_METRICS=true
environment variable or by adding the flag--enable_metrics
to cells' start command. - Prometheus
and for the prometheus.yml
configuration append this instruction.
- job_name: "cells"
file_sd_configs:
- files:
- ${CELLS_WORKING_DIR}/services/pydio.gateway.metrics/prom_clients.json
Make sure to replace $CELLS_WORKING_DIR by your actual working directory.
Please refer to the knowledge base for more information about the Prometheus/Grafana configuration.
Back to top