Skip to main content
This is a community guide and is not officially supported. For issues or advanced configuration, please visit the official repository.
If you’re already using the Pangolin stack with Traefik as your reverse proxy, you already have robust routing in place.
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 existing docker-compose.yml with the new services.
Please replace the YOUR_API_TOKEN with a secure token of your choice.
Note: The new agent replaces both log-dashboard-backend and log-dashboard-frontend from 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 your docker-compose.yml:

Step 4: Launch the Stack


Step 5: Access the Dashboard

You should see real-time traffic metrics, GeoIP maps, error tracking, and system performance indicators.

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 UI

Advanced: Multi-Agent Setup

You can deploy multiple traefik-agent instances across environments and connect them all to a single dashboard. Example:
Then, in the Dashboard → Settings → Agents, add each agent URL and token.

Performance Tuning


Troubleshooting


Summary

  • Replaces the old log-dashboard-backend + log-dashboard-frontend with 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 Repositoryhttps://github.com/hhftechnology/traefik-log-dashboard