vmodule
Enable glog-style vmodule for python's logging
What it is and what it does
vmodule extends Python's standard logging module with glog-style verbose logging levels (VLOG_1, VLOG_2, etc.), mapping them onto numeric severity thresholds. It lets you set a global verbosity level via a `-v` flag and override it per-module using a `--vmodule` string, similar to the glog library used in C++ projects. The package has no external dependencies and integrates directly with the logging module, so you can use it in libraries without imposing a dependency on your users.
You initialize it once in your application's main function with `vmodule_init()`, passing the verbosity level and optional per-module overrides. After that, you log at the verbose levels using `LOG.log(VLOG_1, ...)` just like any other logging call. It's designed for command-line tools and applications where you want to expose fine-grained logging control without restructuring your logging setup.
Use it for:
- Command-line tools that need `-v` flags to control logging verbosity across multiple modules.
- Libraries that want to emit verbose debug logs without forcing users to configure logging themselves.
- Applications porting from glog where developers are familiar with VLOG semantics.
- Debugging production issues by enabling verbose output for specific modules without changing code.
- Multi-module Python projects where different components need different verbosity levels at runtime.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Adds glog-style verbose logging levels to Python's standard logging, letting you define and control per-module verbosity thresholds via command-line flags.
Yes, if you need glog-style verbose logging in a Python CLI or library. The zero-dependency design, permissive license, and active maintenance make it a low-friction addition. The long gap since the last release is not a blocker for a stable, narrow-scope utility, but verify that per-module filtering works as documented for your use case.
Install
vmodule on PyPI
pip
pip install vmoduleuv
uv add vmodulepoetry
poetry add vmoduleInstalling vmodule
Before you install
No runtime dependencies and a pure-Python wheel make installation straightforward. The package is actively maintained with a recent commit history, though it has not seen a release since its initial 0.5.0 in February 2024.
License in practice
MIT license is permissive and imposes no restrictions on use, modification, or distribution in proprietary or open-source projects.
Quickstart
from logging import getLogger
from vmodule import VLOG_1, vmodule_init
LOG = getLogger(__name__)
vmodule_init(v=1, vmodule=None)
LOG.log(VLOG_1, "Verbose message")
Requires Python 3.7 or later; development and linting tested on 3.10-3.12.
Verify before relying
- Whether the package's claim of working back to Python 3.7 has been tested against that version in CI.
- Real-world adoption beyond the top_15000 tier ranking; the 191035 monthly downloads may reflect transitive dependency rather than direct use.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.7) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 900 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 191,035/month — #9,895 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: vmodule-0.5.0-py3-none-any.whl
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
glogA simplified Google-style logging wrapper that…
permissive · top 15,000 on PyPI
verboselogsAdds four custom logging levels (NOTICE, SPAM,…
permissive · top 15,000 on PyPI
tiered-debugA Python logging helper that enables multiple…
permissive · top 15,000 on PyPI
logmuseAdds standard CLI logging options…
permissive · top 15,000 on PyPI
minilogMinilog wraps Python's standard logging module…
permissive · top 15,000 on PyPI
flake8-loggingA Flake8 plugin that detects and flags common…
permissive · top 15,000 on PyPI
macwinnie-enhanced-loggingProvides a batteries-included logging setup…
unclear · top 15,000 on PyPI
structlog-sentryBridges structlog and Sentry to automatically…
permissive · top 5,000 on PyPI
codemod-yamlModifies YAML documents in place with surgical…
permissive · top 15,000 on PyPI
pytest-structlogProvides a pytest fixture for capturing and…
permissive · top 15,000 on PyPI