See what your Plex server is doing in Grafana — sessions, libraries, bandwidth, transcoding
10K+
See what your Plex server is doing in Grafana: sessions, libraries, bandwidth, transcoding.
Connects to your Plex Media Server and exposes metrics (active sessions, library sizes, bandwidth, transcoding status) in a format that Prometheus can scrape and Grafana can visualize.
Key metrics exposed:
/status/sessions for real-time session tracking: polls the Plex sessions API every 5s, so new sessions appear within seconds; the tracker prunes sessions after 60s of inactivityprometheus/client_golang and a few small helper libraries (see Dependencies); everything else is the standard librarygcr.io/distroless/static-debian13 as UID 65532 with no shell or package manager, minimizing attack surface/metrics endpoint that works with any Prometheus-compatible scraper and any Grafana dashboard, no custom visualization layerdocker pull cplieger/plex-exporter:latest
Also published to ghcr.io/cplieger/plex-exporter with identical images and tags. Release versions are tagged vX.Y.Z alongside latest.
# Example compose for plex-exporter. See the README for all configuration options and hardening.
services:
plex-exporter:
image: ghcr.io/cplieger/plex-exporter:latest
container_name: plex-exporter
restart: unless-stopped
environment:
PLEX_URL: "http://plex:32400" # full URL including scheme and port
PLEX_TOKEN: "your-plex-token" # admin token from Plex Web settings
ports:
- "9594:9594"
GPL-3.0-or-later. See LICENSE. The image carries the license text of every bundled component under /usr/share/licenses/.
Third-party attributions are in THIRD_PARTY_NOTICES.md.
Content type
Image
Digest
sha256:a101de70e…
Size
4.8 MB
Last updated
about 4 hours ago
docker pull cplieger/plex-exporter