Skip to main content

pq-dashboard

pq-dashboard is a general purpose, lightweight, FastAPI-based web front-end and CLI tool to monitor your PQ queues and tasks.

Sound familiar? Basically, pq-dashboard is to pq as rq-dashboard is to rq.

Quickstart

Installing from PyPI

python -m pip install pq-dashboard

Then run pq-dashboard with no arguments, which will start the server.

$ pq-dashboard

You may need to configure environment variables (see below) to connect to the PostGRES server where your pq queues are stored.

Using docker

pq-dashboard can run as a docker container. The image can be built with ./scripts/build-image.sh. This creates the pq-dashboard:v0 image.

The easiest way to run locally is to use the host network:

docker run --net=host pq-dashboard:v0

The app will then be available on host port 9182 by default. In production, you may want to configure networking differently.

An environment file can be passed to docker like this:

docker run --env-file=.pq-dash.env --net=host pq-dashboard:v0

CLI tool usage

The pq-dashboard command can also be used as a CLI tool for basic queue management.

$ pq-dashboard stats|cleanup|cancel-all <comma-separated list of queue names>

For more details, see the help messages on all the commands

Environment variables

pq-dashboard will read config from environment variables prefixed with PQ_DASH.

Variable Default value Explanation
PQ_DASH_PGHOST localhost Host the PostgreSQL server is running on.
PQ_DASH_PGPORT 5432 Port the PostgreSQL server is running on.
PQ_DASHBOARD_PGUSER postgres PostgreSQL user name to connect as.
PQ_DASHBOARD_PGPASSWORD postgres Password for the PostgreSQL user.
PQ_DASHBOARD_DATABASE postgres PostgreSQL database name containing queue table
PQ_DASHBOARD_QUEUE_TABLE queue Name of queue table containing items

Alternatively, these variables can be stored in a plaintext .pq-dash.env file. Enviroment variables will take precedence over the .env file.

Development

To install dev dependencies, use:

poetry install

Then, install the pre-commit hook:

pre-commit install

This ensures all commits will be linted properly.

To run the dev frontend, from the pq_dashboard/frontend directory run:

npm run dev

then to start the backend:

uvicorn pq_dashboard.main:app --reload --port 9182

The backend statically serves the frontend, but you will need to refresh the page to see your changes in the frontend code.

Metadata

Release files for pq-dashboard 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pq-dashboard 0.1.1
File Size Uploaded
pq-dashboard-0.1.1.tar.gz 179.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pq-dashboard 0.1.1
File Interpreter ABI Platform
pq_dashboard-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 363.3 kB

Release files / pq-dashboard-0.1.1.tar.gz

Download URL pq-dashboard-0.1.1.tar.gz
Size 179.5 kB
Tags Source
SHA-256 checksum
How to use checksums
5d45ad7ca497089f82483d50a6bc7e2b542a3274230042e14a01adee5c7f6b67
BLAKE2b-256 checksum
How to use checksums
89cce00dbb945d3f0329573f4e6fb5255adb2cedf6c5db01a88989979c2b7fee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.7 CPython/3.9.5 Linux/5.8.0-63-generic

Release files / pq_dashboard-0.1.1-py3-none-any.whl

Download URL pq_dashboard-0.1.1-py3-none-any.whl
Size 183.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
90db734a1c7183ea79f01e2f51b8639e03ac7b36dbf92a84ed903743d7b72b2e
BLAKE2b-256 checksum
How to use checksums
898ee302f206822fdd8e515a8eccf9fff8353ad09a95b435f5051ef268894ba4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.7 CPython/3.9.5 Linux/5.8.0-63-generic

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page