Skip to main content

Logging utilities for Python applications

Project description

MTK Logger

Logging utilities for MarkTrack applications.

Installation

To install from GitHub Packages:

# Configure pip to use GitHub Packages
pip config set global.extra-index-url https://YOUR_GITHUB_TOKEN@github.com/pprasquier/mtk_logger/raw/main/dist/

# Install the package
pip install mtk_logger

Or with Poetry:

# Add GitHub Packages as a source
poetry source add --priority=supplemental github https://github.com/pprasquier/mtk_logger/raw/main/dist/

# Install the package
poetry add mtk_logger

Usage

Default import (optional settings_dir; defaults to "settings_files" for backwards compatibility):

from mtk_logger import get_logger

logger = get_logger(__name__)
logger.info("This is a log message")

Custom Prefy settings directory (same pattern as Preferences(settings_dir) elsewhere):

from mtk_logger import get_logger

logger = get_logger(__name__, settings_dir="backend/settings/app")

Structured JSON logs (log_format = json in Prefy) include any keys you set on CorrelationContext:

from mtk_logger import CorrelationContext, get_logger

logger = get_logger(__name__, settings_dir="path/to/settings")
CorrelationContext.set("cycle_id", "cyc-abc")
CorrelationContext.set("job_id", "job-123")  # vendor-neutral: any string keys
logger.info("doing work")

Exports: MTKLogger, get_logger, CorrelationContext, JSONFormatter.

FastAPI middleware

from mtk_logger.fastapi_middleware import RequestLoggingMiddleware

app.add_middleware(RequestLoggingMiddleware)

With a custom settings directory (matches get_logger(..., settings_dir=...)):

from mtk_logger.fastapi_middleware import RequestLoggingMiddleware

app.add_middleware(RequestLoggingMiddleware, settings_dir="backend/settings/app")

See settings_example.json for Prefy keys: log_dir, log_format, process_name, etc.

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

mtk_logger-0.5.0.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

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

mtk_logger-0.5.0-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file mtk_logger-0.5.0.tar.gz.

File metadata

  • Download URL: mtk_logger-0.5.0.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for mtk_logger-0.5.0.tar.gz
Algorithm Hash digest
SHA256 91f636d355054a7dbc1f0690d30cd16451e155652ca14a1d0df399a26e44eef5
MD5 cd75a7f4a7abc0cebb742a42057c4451
BLAKE2b-256 b138380c9a28a0edce426b1ccc33aea7edb237148b9b40d3c7fc8b7a0e2465f2

See more details on using hashes here.

File details

Details for the file mtk_logger-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: mtk_logger-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 7.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for mtk_logger-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7977a2e0100cd2a53c31ced18b95e91e9888a504c41c5b2e74fe58cb3cceadc6
MD5 51088bdd9d57fa7d0e6c053c98289d51
BLAKE2b-256 902a5dfe6c0fcc2c3a22a30badb2bce844749d599b75a0e88cfe5438cf829a36

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