Flexible, production-ready logging library with support for 15+ sinks and async operations
Project description
Jazzmine Logging
A flexible, production-ready logging library for Python with support for multiple sinks and async operations.
Features
- Multiple Sinks: Support for 15+ logging destinations
- Async Support: Async logging with
aiohttpand async sink implementations - Flexible Configuration: YAML/JSON-based configuration or just pass in a string
- Context Management: Request context tracking
- Optional Dependencies: Install only what you need
Installation
Basic Installation
pip install jazzmine-logging
With Optional Sinks
# Individual sinks
pip install jazzmine-logging[sentry]
pip install jazzmine-logging[kafka]
pip install jazzmine-logging[redis]
pip install jazzmine-logging[honeycomb]
pip install jazzmine-logging[aws]
pip install jazzmine-logging[gcp]
# All sinks
pip install jazzmine-logging[all]
Supported Sinks
HTTP-Based Sinks
- Datadog - Datadog HTTP API
- Loki - Grafana Loki
- New Relic - New Relic Logs API
- Logstash - Elastic Logstash HTTP input
Cloud Provider Sinks
- CloudWatch - AWS CloudWatch Logs (requires
awsextra) - Pub/Sub - Google Cloud Pub/Sub (requires
gcpextra)
Message Queue Sinks
- Kafka - Apache Kafka (requires
kafkaextra) - Redis - Redis Streams (requires
redisextra)
Observability Platforms
- Sentry - Error tracking (requires
sentryextra) - Honeycomb - Observability platform (requires
honeycombextra)
Agent-Based Sinks
- Vector - Vector HTTP sink
- Fluent Bit - Fluent Bit HTTP input
- Promtail - Grafana Promtail
- Graylog - GELF format (HTTP/UDP/TCP)
Quick Start
from jazzmine.logging import BaseLogger
# Initialize logger
logger = BaseLogger.from_config('logging_config.yaml')
# Log messages
logger.info('Application started')
logger.error('Something went wrong', extra={'user_id': 123})
# Async logging
await logger.alog('info', 'Async log message')
Configuration Example
logger_name: my_app
level: INFO
sinks:
- type: datadog
api_key: your_api_key
site: datadoghq.com
- type: sentry
dsn: your_sentry_dsn
environment: production
License
MIT License - see LICENSE file for details.
Part of the Jazzmine Ecosystem
This package is part of the Jazzmine framework. Check out other packages:
jazzmine-security- Security utilitiesjazzmine-monitoring- Monitoring and metrics
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jazzmine_logging-0.1.0.tar.gz.
File metadata
- Download URL: jazzmine_logging-0.1.0.tar.gz
- Upload date:
- Size: 13.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f82b7ef7ae0d5a4980e3483f488243b14c4d73bff55206a3f11618ed492d3dab
|
|
| MD5 |
3b320521a98f045d1bd838b6249b3d92
|
|
| BLAKE2b-256 |
dac51d6a5ac561cba8412c48a1865fb65aad5de9cb5d900c1dc4428521b30a37
|
File details
Details for the file jazzmine_logging-0.1.0-py3-none-any.whl.
File metadata
- Download URL: jazzmine_logging-0.1.0-py3-none-any.whl
- Upload date:
- Size: 21.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f65e9f104362a207a1d20d784a6038d20ec32ab3da39ad64a6488edb8fa1870a
|
|
| MD5 |
68d3dc8c7bf7af3422663574dc844607
|
|
| BLAKE2b-256 |
ead4580e6970795381da7cf1df5840aa35ca2528bf13d4e980e2d07115356072
|