Skip to main content

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 aiohttp and 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 aws extra)
  • Pub/Sub - Google Cloud Pub/Sub (requires gcp extra)

Message Queue Sinks

  • Kafka - Apache Kafka (requires kafka extra)
  • Redis - Redis Streams (requires redis extra)

Observability Platforms

  • Sentry - Error tracking (requires sentry extra)
  • Honeycomb - Observability platform (requires honeycomb extra)

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 utilities
  • jazzmine-monitoring - Monitoring and metrics

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

jazzmine_logging-0.1.0.tar.gz (13.0 kB view details)

Uploaded Source

Built Distribution

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

jazzmine_logging-0.1.0-py3-none-any.whl (21.0 kB view details)

Uploaded Python 3

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

Hashes for jazzmine_logging-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f82b7ef7ae0d5a4980e3483f488243b14c4d73bff55206a3f11618ed492d3dab
MD5 3b320521a98f045d1bd838b6249b3d92
BLAKE2b-256 dac51d6a5ac561cba8412c48a1865fb65aad5de9cb5d900c1dc4428521b30a37

See more details on using hashes here.

File details

Details for the file jazzmine_logging-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for jazzmine_logging-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f65e9f104362a207a1d20d784a6038d20ec32ab3da39ad64a6488edb8fa1870a
MD5 68d3dc8c7bf7af3422663574dc844607
BLAKE2b-256 ead4580e6970795381da7cf1df5840aa35ca2528bf13d4e980e2d07115356072

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