38 lines
1.3 KiB
Markdown
38 lines
1.3 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
|
|
|
|
- `DOCKER_INFLUXDB_INIT_ORG`
|
|
- Designates the InfluxDB organization in `telegraf.conf`
|
|
- `INFLUX_WRITE_TOKEN`
|
|
- Designates the write token for InfluxDB in `telegraf.conf`
|
|
- `INFLUX_HOST` (optional)
|
|
- `LOKI_HOST` (optional)
|
|
|
|
## 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}')
|
|
``` |