Files
docker-observation/README.md
2024-02-24 15:50:56 -06:00

39 lines
1.7 KiB
Markdown

# docker-observation
Various tools to monitor Docker containers
## Services
### [Telegraf](https://www.influxdata.com/time-series-platform/telegraf/) - [Docker plugin](https://github.com/influxdata/telegraf/blob/master/plugins/inputs/docker/README.md)
> Telegraf is the open source server agent to help you collect metrics from your stacks, sensors, and systems.
### Grafana [Promtail](https://grafana.com/docs/loki/latest/send-data/promtail/)
> Promtail is an agent which ships the contents of local logs to a private Grafana Loki instance or Grafana Cloud. It is usually deployed to every machine that runs applications which need to be monitored.
#### Pipline Stages
- appdaemon
- labels `date`. `time`, `level`, `app`, and `msg`
- zigbee2mqtt
- labels `MQTT publish` - `device` and `payload`
- categorizes `occupancy` or `contact`
## Environment Variables
| Environment Variable | Description |
| -------------------------- | ----------------------------------------------- |
| `DOCKER_GUID` | Group ID number for the `docker` user group |
| `DOCKER_INFLUXDB_INIT_ORG` | Organization name for InfluxDB |
| `INFLUX_WRITE_TOKEN` | InfluxDB write token |
| `INFLUX_HOST` | Hostname or IP address of the InfluxDB instance |
| `LOKI_HOST` | Hostname or IP address of the Loki instance |
## Setup
Set the `DOCKER_GUID` so the container has permission to access the socket. This ensures that the telegraf container will have read access on the Docker socket.
```shell
export DOCKER_GUID=$(getent group docker | awk -F ':' '{print $3}')
```