Web dashboard and CLI utility for managing PQ queues
Project description
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pq-dashboard-0.1.1.tar.gz
.
File metadata
- Download URL: pq-dashboard-0.1.1.tar.gz
- Upload date:
- Size: 179.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.7 CPython/3.9.5 Linux/5.8.0-63-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5d45ad7ca497089f82483d50a6bc7e2b542a3274230042e14a01adee5c7f6b67 |
|
MD5 | 43a5712bf01789af6375d32f2a2c6eac |
|
BLAKE2b-256 | 89cce00dbb945d3f0329573f4e6fb5255adb2cedf6c5db01a88989979c2b7fee |
File details
Details for the file pq_dashboard-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: pq_dashboard-0.1.1-py3-none-any.whl
- Upload date:
- Size: 183.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.7 CPython/3.9.5 Linux/5.8.0-63-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90db734a1c7183ea79f01e2f51b8639e03ac7b36dbf92a84ed903743d7b72b2e |
|
MD5 | 1bc0f0a37835e48d566c6eef1148ea61 |
|
BLAKE2b-256 | 898ee302f206822fdd8e515a8eccf9fff8353ad09a95b435f5051ef268894ba4 |