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.14.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.14-py3-none-any.whl (18.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: amox-0.0.14.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.14.tar.gz
Algorithm Hash digest
SHA256 e25fd041a137a724743b91f741cb2fa65351692f1f6b94122c10663f6ba2efa4
MD5 159c651a34282c1be39339036b1c1df0
BLAKE2b-256 372d9c024c927ed731205b9c08c1995f6b37327d0c3e4976c8bb17f8356f31c5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: amox-0.0.14-py3-none-any.whl
  • Upload date:
  • Size: 18.5 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.14-py3-none-any.whl
Algorithm Hash digest
SHA256 4145ebb4691788a4597f6bd946f6b5f74078c94b046de6ac34ab293c2e2bf9f8
MD5 2ce854f6455e0de95dbe717856010aec
BLAKE2b-256 8021bacfb0fd6b07a18bb079c7d465d2cede2f0fe949aec1ad8afe8022ee19c6

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