This is a community guide and is not officially supported. For issues or advanced configuration, please visit the official repository.
However, raw logs can be hard to interpret — making it difficult to visualize request patterns, latency, and geographic origins. The new Traefik Log Dashboard (v2) introduces a lightweight agent-based architecture with multi-instance scalability, enhanced GeoIP analytics, and a modern Next.js frontend for real-time insights into your Traefik traffic.
Highlights (New in v2)
- Agent-based architecture: The Go-powered agent parses logs, exposes metrics, and supports multiple Traefik instances.
- Multi-agent support: Monitor multiple Traefik setups (e.g., production, staging) from one dashboard.
- Next.js 14 frontend: Real-time charts, filters, and system stats in a responsive UI.
- Enhanced GeoIP: Supports both City and Country MaxMind databases.
- System monitoring: Built-in CPU, memory, and disk tracking.
- Bearer token authentication: Secure access between dashboard and agents.
- Backward compatible with existing Traefik log setups.
Prerequisites
- Docker + Docker Compose
- Traefik v2.x or v3.x (logs in JSON format)
- A working Pangolin stack
- (Optional) MaxMind GeoLite2 databases (City + Country)
Step 1: Configure Traefik Logs
Ensure Traefik is outputting JSON logs and access logs are written to a file. Update your./config/traefik/traefik_config.yml:
Tip: JSON format is required for accurate parsing by the new agent.
Step 2: Add Dashboard and Agent Services
Extend your existingdocker-compose.yml with the new services.
Note: The new agent replaces bothlog-dashboard-backendandlog-dashboard-frontendfrom the previous guide.
Step 3: Setup MaxMind GeoIP (City + Country)
GeoIP is optional but highly recommended for geographic analytics and maps.1. Create a free MaxMind account
GeoLite2 Signup Generate a license key and export it for Docker use:2. Add the GeoIP Database Updater
Append this to yourdocker-compose.yml:
Step 4: Launch the Stack
Step 5: Access the Dashboard
- Web UI → http://localhost:3000
- Default data source:
traefik-agent:5000
Key Features
Real-time analytics for request rates, response times, and errors GeoIP maps with both City and Country-level resolution System health (CPU, memory, disk) Multi-agent support (monitor multiple Traefik instances) Secure API authentication via token Responsive modern UIAdvanced: Multi-Agent Setup
You can deploy multipletraefik-agent instances across environments and connect them all to a single dashboard.
Example:
Performance Tuning
| Setting | Description | Recommended |
|---|---|---|
TRAEFIK_LOG_DASHBOARD_SYSTEM_MONITORING | Enables system stats | true |
TRAEFIK_LOG_DASHBOARD_LOG_FORMAT | Log parsing format | json |
Troubleshooting
| Issue | Cause | Fix |
|---|---|---|
| Dashboard not loading | Container not healthy | docker compose ps → check health |
| No logs appearing | Wrong log path or format | Ensure access.log is JSON and volume mounted |
| GeoIP missing | Missing databases | Run maxmind-updater or mount both .mmdb files |
| Auth errors | Token mismatch | Verify AGENT_API_TOKEN matches TRAEFIK_LOG_DASHBOARD_AUTH_TOKEN |
| Slow UI | Large logs | Use JSON logs + incremental read; prune logs periodically |
Summary
- Replaces the old
log-dashboard-backend+log-dashboard-frontendwith the new agent-based architecture - Supports multiple Traefik instances
- Adds GeoLite2 Country + City databases
- Integrates real-time analytics + system monitoring
- Uses MaxMind license key for GeoIP updates
- More stable with less memory
Project Repository → https://github.com/hhftechnology/traefik-log-dashboard

