A Docker Compose environment with a full OpenTelemetry stack for collecting, storing, and analyzing log data, metrics, and traces.
Jaeger is used for storing traces, Loki is used for storing logs, Prometheus is used as a time-series database for storing metrics, the OpenTelemetry Collector is used for ingesting/transforming/storing data in the relevant backends, and Grafana is used as the web UI for accessing logs/traces/metrics.
Obviously, you'll need Docker and Docker Compose, once these are installed, everything can be brought online with a single command:
docker compose up
And that's it!
After starting the compose environment, there are a few provided ways to send telemetry data to the collector:
- OpenTelemetry
- You can send OpenTelemetry logs, metrics, and traces to localhost on port 4317 for a gRPC transport and port 4318 for an HTTP/1 transport.
- GELF
- You can send log data over UDP to localhost on port 12201 in GELF format.
- Syslog
- You can send RFC-5424 format syslog messages to localhost on port 5514 via both TCP and UDP.
To access your observability data, open http://localhost:3000 to access Grafana.
Licensed at your discretion under either: