Skip to main content

Schema on read based logging

Project description

amox

Amox (from the Nahuatl amoxtli: book, codex, written record) is a zero-dependency Python logging library to produce records on schema-on-read formats.

Adheres to standard log serialization formats, including logfmt and json, with a single configuration line to rule a system.

Mental model

A service runs programmatically, emitting records for domain-specific events. Producing messages in a human-readable format for real-time inspection is necessary, yet these have to be processable subsequently.

Produce logs semi-structured on a open stream. Let third parties do the parsing, processing or any downstream action.

Usage

Initialize once

Single call, every log record will obey the configured format.

On application's entrypoint:

import amox

import package


amox.setup(name=package.__name__)  # `package` as application's name

Standard logging.getLogger() works transparently: all records are emitted on the configured format.

import logging

logger = logging.getLogger(__name__)

[!NOTE] amox provides an analog to logging's getLogger with amox.get_logger. However, usage of this function is not mandatory, it can be used interchangeably as preferred.

Line by line

Configuration is individually possible at the logger level, yet format consistency across all log emissions cannot be guaranteed by amox.

As follows

import amox

logger = amox.get_logger(__name__)

License

MIT

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

amox-0.0.13.tar.gz (15.1 kB view details)

Uploaded Source

Built Distribution

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

amox-0.0.13-py3-none-any.whl (18.6 kB view details)

Uploaded Python 3

File details

Details for the file amox-0.0.13.tar.gz.

File metadata

  • Download URL: amox-0.0.13.tar.gz
  • Upload date:
  • Size: 15.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for amox-0.0.13.tar.gz
Algorithm Hash digest
SHA256 07c7b4e0d092bc3a13d505492d7cfa0d94b8f8e80d4be271fd1b93e130a1c031
MD5 675d1eb6fe155739c78f5c4c3506bc87
BLAKE2b-256 c411396fbdec6de6f388d0a65b23f01916d4b2b06cf986013ecd19e8e211ecc6

See more details on using hashes here.

File details

Details for the file amox-0.0.13-py3-none-any.whl.

File metadata

  • Download URL: amox-0.0.13-py3-none-any.whl
  • Upload date:
  • Size: 18.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for amox-0.0.13-py3-none-any.whl
Algorithm Hash digest
SHA256 94fec2868c5aff5c684f664e6b8376f28523f232ac6fb9acbba3df5d954f6a1d
MD5 bcfe34e2de502e8ba28f4c68358c70cb
BLAKE2b-256 1f1fcac5497e36b47ea418cca7c4e2de9401d7cc3ea4f465fbe73edff5d9b66a

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