This directory contains Docker Compose configuration for local development and testing of Thyme.
loggen (500 lines/sec)
↓ (writes to shared volume)
/var/log/app/app.log
↓ (filelog receiver)
thyme collector
↓ (OTLP exporter → nop-collector:4317)
nop-collector
↓ (nop exporter - discards data)
∅
Both collectors send internal telemetry → LGTM
- loggen: Generates 500 log lines/sec to
/var/log/app/app.logon shared volume - thyme: Reads logs via filelog receiver, processes (batch, memory_limiter, resource), exports via OTLP to nop-collector
- nop-collector: Receives OTLP, processes, exports to nop (discard)
- LGTM: Collects internal telemetry (metrics, traces) from both collectors
Start the stack:
docker-compose upStart in detached mode:
docker-compose up -dView logs:
docker-compose logs -f thyme
docker-compose logs -f nop-collector
docker-compose logs -f loggenStop the stack:
docker-compose downClean up volumes:
docker-compose down -v3000- Grafana (LGTM)8080- loggen metrics endpoint55679- nop-collector zpages55680- thyme zpages1777- nop-collector pprof1778- thyme pprof
Open http://localhost:3000 to view collector internal telemetry:
- Navigate to Explore → Prometheus datasource
- Query collector metrics like
otelcol_receiver_accepted_log_records
Access collector zpages for debugging:
- Thyme: http://localhost:55680/debug/servicez
- nop-collector: http://localhost:55679/debug/servicez
Profile collectors:
# Thyme CPU profile
go tool pprof http://localhost:1778/debug/pprof/profile
# nop-collector CPU profile
go tool pprof http://localhost:1777/debug/pprof/profileView log generator metrics:
curl http://localhost:8080/metricsEdit docker-compose.yaml and modify the loggen service:
--lines-per-second=500- Adjust throughput--duration=0- Set to 0 for continuous operation
- thyme: Edit
../../distributions/thyme/config.yaml - nop-collector: Edit
nop-collector-config.yaml
After modifying configs, restart containers:
docker-compose restart thyme
docker-compose restart nop-collectordocker-compose exec loggen ls -lh /var/log/app/docker-compose logs thyme | grep -i "filelog"docker-compose logs thyme | grep -i "otlp"
docker-compose logs nop-collector | grep -i "otlp"docker stats