Skip to content

Services Monitoring Overview

Free Only availability check
Starter Only availability check
Professional All specific metrics

Glouton automatically discovers services running on your system and monitors them. Each service page displays badges indicating the supported monitoring capabilities:

  • Auto-Detection — Glouton detects the service by its listening port or process
  • Health Check — Glouton verifies the service is responding correctly
  • Built-in Metrics — Glouton collects metrics natively (e.g., Redis INFO, MySQL status variables)
  • Prometheus Metrics — Glouton scrapes the service’s native /metrics endpoint
  • Exporter Metrics — Metrics collected via a third-party Prometheus exporter
  • Logs — Glouton collects and parses the service’s log files

If your service is not listed, you can define a custom check or a custom metric. To disable metrics for a service, see service_ignore_metrics.

Service Auto-Detection Health Check Built-in Prometheus Exporter Logs
Apache HTTP
Asterisk
Authentik
BIND
Bitbucket
Caddy
Cassandra
ClickHouse
CockroachDB
Confluence
Consul
CoreDNS
Couchbase
CouchDB
Dovecot
ejabberd
Elasticsearch
Emissary-ingress
Envoy
etcd
Exim4
Fail2ban
Forgejo
FreeRADIUS
Gitea
GitLab
HAProxy
InfluxDB
Infisical
Jenkins
JIRA
Kafka
libvirtd
Memcached
MinIO
MongoDB
Mosquitto
MySQL / MariaDB
NATS
NFS
NSQ
Nginx
NTP
OpenLDAP
OpenVPN
PHP-FPM
Postfix
PostgreSQL
PowerDNS
RabbitMQ
Redis
RethinkDB
Riak
RustFS
Salt
Squid
Traefik
UPSD
uWSGI
Valkey
Varnish
Vault
ZooKeeper

Glouton checks TCP sockets for each service. By default, a simple TCP connection tests the service, but some services support a specific health check. These checks run every minute. For TCP services, Glouton keeps a connection open and re-checks immediately if that connection breaks.

The current status can be viewed in the Status Dashboard, and you can configure a notification to be alerted on status changes.

The status history is stored in a metric named service_status with two labels:

  • service: the type of service (e.g., “apache”, “nginx”)
  • service_instance: the container name (absent for non-containerized services)

Status values:

  • 0 — check passed successfully
  • 1 — check passed with a warning (e.g., Apache returned a 404)
  • 2 — check detected an issue
  • 3 — check status unknown (typically due to a timeout)

You can override auto-detected service parameters using configuration files, Docker labels, or Kubernetes annotations.

Add entries to a Glouton configuration file:

service:
- type: "apache"
ignore_ports:
- 8000
- 9000
- type: "mysql"
instance: "name_of_a_container"
username: root
password: root

Each service is identified by the type and instance pair. The type must match a supported service name (“apache”, “nginx”, “postgresql”, etc.). The instance is the container name — omit it for non-containerized services.

Any overridable setting can be set using the prefix glouton.:

Terminal window
docker run --label glouton.ignore_ports="8000,9000" [...]

Or as a Kubernetes pod annotation:

apiVersion: apps/v1
kind: Deployment
spec:
template:
metadata:
annotations:
glouton.ignore_ports: "8000,9000"
SettingDescriptionSupported Services
addressIP address the service listens onAll
portTCP port the service listens onAll
ignore_portsList of ports to exclude from auto-detectionAll
tagsList of tags to associate with the serviceAll
intervalCheck interval in seconds (minimum 60)All
http_pathCustom HTTP path for health checkApache, InfluxDB, Nginx, Squid
http_status_codeExpected HTTP status codeApache, InfluxDB, Nginx, Squid
http_hostHTTP Host header for virtual hostsApache, InfluxDB, Nginx, Squid
username, passwordAuthentication credentialsJenkins, MySQL, OpenLDAP, PostgreSQL, RabbitMQ, UPSD
stats_urlURL for metrics endpointHAProxy, Jenkins, PHP-FPM
stats_portPort for metrics endpointNATS, RabbitMQ, uWSGI
stats_protocolProtocol for metrics endpointuWSGI
metrics_unix_socketUnix socket path for metricsMySQL
detailed_itemsItems for per-item metricsPostgreSQL, Cassandra, Kafka
included_items, excluded_itemsInclude/exclude itemsJenkins
jmx_port, jmx_username, jmx_passwordJMX configurationJava services
ssl, ssl_insecure, starttlsTLS settingsOpenLDAP
ca_file, cert_file, key_fileTLS certificate pathsOpenLDAP
check_type, match_process, check_commandCustom check configCustom checks
nagios_nrpe_nameExpose check to Nagios via NRPEAll
log_files, log_format, log_filterLog collection settingsServices with log support

Glouton comes with built-in log configuration for: Apache, HAProxy, Kafka, MongoDB, MySQL, Nginx, PostgreSQL, RabbitMQ, Redis, and Valkey.