Skip to main content

A simple wrapper program for modifying dbt command output

Project description

dbtmon

A simple wrapper program for modifying dbt command output

dbtmon

dbtmon is a CLI tool that wraps the output of dbt commands to improve their display for easier monitoring and readability. It's designed to integrate seamlessly into your workflow: just replace dbt with dbtmon.

Features

  • Acts as a drop-in replacement for dbt <command> with no changes to your arguments
  • Keeps running jobs at the bottom of the terminal output
  • Displays elapsed runtime and completed runtime in HH:MM:SS form

dbt run:

Screenshot of the output of dbt run. Markup points out the inability to clearly see which models are running and for how long they have been running.

dbtmon run:

Screenshot of the output of dbtmon run. Markup points out the running jobs grouped and displayed in the terminal and the elapsed runtime clocks.

Installation

python -m pip install dbtmon

View on PyPI: https://pypi.org/project/dbtmon/

Usage

Run dbt commands as usual, replacing dbt with dbtmon:

dbtmon run
dbtmon test -s my_model
dbtmon build --full-refresh

For help or version information:

dbtmon --help
dbtmon --version

Configuration

Create a configuration file at ~/.dbt/dbtmon.yaml to customize behavior or pass config items as command line arguments:

# How often to refresh the display (in seconds)
polling_rate: 0.2

# Minimum wait time between updates (in seconds)
minimum_wait: 0.025

If no config file is present, default values are used.

Architecture

  • dbtmon: Main CLI entry point. Runs the dbt command and pipes output into a formatting process.
  • __dbtmonpipe__: Internal entry point that reads from stdin and formats the output.
  • Processing and display logic is implemented in dbtmon/dbtmon.py.

License

Apache License 2.0. See the LICENSE file for details.

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

dbtmon-1.1.9.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

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

dbtmon-1.1.9-py3-none-any.whl (13.4 kB view details)

Uploaded Python 3

File details

Details for the file dbtmon-1.1.9.tar.gz.

File metadata

  • Download URL: dbtmon-1.1.9.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for dbtmon-1.1.9.tar.gz
Algorithm Hash digest
SHA256 a3419e241b62a8b2f5709aadf99c9ea3291acb2ad1bfaf1384ec420e5cad93ba
MD5 1bd57f4ae9ac9be45699c89be0d5867f
BLAKE2b-256 39cff3ad35a80a0e9845818f76014c82e3450a0db297802355816833d4297c41

See more details on using hashes here.

File details

Details for the file dbtmon-1.1.9-py3-none-any.whl.

File metadata

  • Download URL: dbtmon-1.1.9-py3-none-any.whl
  • Upload date:
  • Size: 13.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for dbtmon-1.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 d6e371fb4a55c7d265f748f812d109ec2707868a75890cafba17cb5c54d6f7c3
MD5 4bebda9837bff6b2c11f3f04614f6647
BLAKE2b-256 05f42763576a1940f00699f5c8eefacc79ae8f514e0a9215f2cf9e06c79fc882

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