Skip to main content

A readable web dashboard for pm2 — services, memory, restarts, and live log tailing in one page.

Project description

pm2-dash

A readable web dashboard for pm2. Services, memory, CPU, restart counts, and live log tailing in one page. Auto-refreshing, no setup.

I run 57 pm2 services on one box. pm2 monit is a terminal grid that shows a handful at a time and pm2 logs floods every service at once. I wanted the one view pm2 doesn't ship: every service in a sortable table, restart counts I can scan for the one that's flapping, and click-to-tail logs without grepping for a log path. So I built it.

pm2-dash

Install

pip install pm2-dash

Run

pm2-dash                 # http://127.0.0.1:9777
pm2-dash --port 8080
pm2-dash --host 0.0.0.0  # expose on the network (put auth in front of it)

It shells out to pm2 jlist for state and reads each service's log files straight off disk. No pm2 stream stays open, and tailing a multi-GB log reads only the tail, not the whole file.

What it shows

  • Every service: id, status, CPU, memory, restart count, uptime, exec mode, pid
  • Errored and stopped services surfaced in the header; unstable restarts flagged with a ⚠
  • Sorted so anything not online floats to the top
  • Click any row to tail its stdout + stderr (last 80 lines)
  • The whole thing repolls every 2 seconds

Honest scope

Read-only. It does not start, stop, or restart anything, by design, so it's safe to leave open on a shared box. It reads what pm2 reports; if pm2 can't see a process, neither can this. One CDN script tag (htmx) for the polling; no build step, no node_modules. View source is the entire frontend.

If you bind to 0.0.0.0, put a reverse proxy with auth in front of it. It ships no auth of its own.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pm2_dash-0.1.0.tar.gz (375.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pm2_dash-0.1.0-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file pm2_dash-0.1.0.tar.gz.

File metadata

  • Download URL: pm2_dash-0.1.0.tar.gz
  • Upload date:
  • Size: 375.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for pm2_dash-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a7c2ffe8c1138ddb8ad3b42e4a9e6d13d2fddb11d23d88b1dbf6a8543af0ec6a
MD5 94b1d8ba03a6be13c6bca319cdc77ef4
BLAKE2b-256 8a7b38f0e418df25b9eba8d912e560ea3a112d690f377d3daf9d08f0549ee0af

See more details on using hashes here.

File details

Details for the file pm2_dash-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pm2_dash-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for pm2_dash-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e2640abc3401307a22dba8ff8777b85a69f76e75cfc40651a32f06254f6f069e
MD5 28ff93cffa40326d14e9f0dedbebd930
BLAKE2b-256 a4b92180dc5a661839852353eecd4fb55e56df7a3f975747ac23686a2e580a2e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page