Skip to content

A simple telemetry setup using Grafana, Prometheus, Loki, Jaeger and OpenTelemetry in an easy-to-use docker compose example setup to extract logs, metrics and traces in development.

License

Notifications You must be signed in to change notification settings

cybergitt/telemetry-stacks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Telemetry stacks

This setup uses Loki for logs, Prometheus for metrics, and Jaeger for tracing. It will automatically collect logs from other Docker containers running on the same server if the installation steps below are followed.

The stack includes the following:

  • cAdvisor [Docs] [Local UI] - Provides resource usage and performance metrics of Docker containers to Prometheus
  • Grafana [Docs] [Local UI] - UI to explore logs and metrics using queries, charts, and alerts
  • Jaeger [Docs] [Local UI] - Provides tracing data which is linked to each incoming server request
  • Loki [Docs] - Ingests logs which can be viewed and queried from within Grafana
  • OpenTelemetry Collector [Docs] - Collects metrics data from server and exports the data to Prometheus
  • Zipkin [Docs] - A distributed tracing system, it helps gather timing data needed to troubleshoot latency problems in service architectures
  • Prometheus [Docs] [Local UI] - A monitoring toolkit for timeseries based metrics
  • Vector [Docs] - Transforms Docker logs and send them to Loki, as well as collecting logs from local Node.js processes if required

Installation

  • Clone the repository and launch cAdvisor, Grafana, Jaeger, Loki, OpenTelemetry Collector, Prometheus, and Vector:
    git clone [email protected]:cybergitt/telemetry-stacks.git
    cd telemetry-stacks
    docker-compose up -d
  • Navigate to http://localhost:3000/ and log in using the default Grafana user (admin/admin).

Troubleshooting

Jaeger EMSGSIZE error

Jaeger needs higher UDP package sizes than the maximum configured on Mac. The default value should be increased using:

sudo sysctl net.inet.udp.maxdgram=65536

About

A simple telemetry setup using Grafana, Prometheus, Loki, Jaeger and OpenTelemetry in an easy-to-use docker compose example setup to extract logs, metrics and traces in development.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published