Skip to main content

yb-observability

Reusable Python infrastructure for application configuration and observability.

yb-observability provides common infrastructure that can be shared across Python applications without coupling the library to a specific application or architecture.

The project currently focuses on configuration and logging, with additional observability capabilities planned for future releases.

Features

Configuration

  • YAML configuration loading.
  • Environment variable resolution.
  • Nested environment variable support.
  • Configuration validation.
  • Clear configuration-related exceptions.

Logging

  • Loguru-based logging.
  • Explicit application/service identity.
  • Consistent human-readable log format.
  • Console logging.
  • File logging.
  • Daily log rotation.
  • Configurable retention.
  • Per-service log directories.

Future

The library is designed to grow with additional infrastructure such as:

  • Structured/JSON logging.
  • Request and correlation IDs.
  • Metrics.
  • Distributed tracing.
  • OpenTelemetry integrations.
  • Additional observability integrations.

Features are introduced incrementally and remain independent where possible.

Installation

Install the package from PyPI:

pip install yb-observability

With uv:

uv add yb-observability

Basic Usage

Configuration:

from yb_observability.config import ConfigLoader

config = ConfigLoader("config.yml").load()

Logging:

from yb_observability.logging import configure_logging

configure_logging(service="my-service")

The application remains responsible for deciding what should be logged. yb-observability is responsible for configuring the logging infrastructure and providing a consistent logging interface.

Design Goals

Reusable

The library must not depend on a specific application, framework, infrastructure provider, or domain.

Explicit

Applications should explicitly configure the behavior they require rather than relying on hidden conventions.

Consistent

Applications using the library should receive consistent configuration and logging behavior.

Extensible

New capabilities should be possible without breaking the existing public API.

Testable

Core functionality should be covered by automated tests.

Production-oriented

The library should be suitable for both local development and production applications.

Project Structure

yb-observability/
├── src/
│   └── yb_observability/
│       ├── config/
│       └── logging/
│
├── tests/
│   ├── config/
│   └── logging/
│
├── .github/
│   ├── ISSUE_TEMPLATE/
│   └── workflows/
│
├── CHANGELOG.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── SECURITY.md
└── pyproject.toml

Development

The project uses:

  • Python 3.14
  • uv
  • Ruff
  • Pyright
  • Pytest
  • Loguru
  • PyYAML

Install development dependencies:

uv sync

Run the test suite:

uv run pytest

Run linting:

uv run ruff check .

Check formatting:

uv run ruff format --check .

Run type checking:

uv run pyright

Build the package:

uv build

Contributing

Contributions are welcome.

Before submitting a pull request, make sure that:

  • Tests pass.
  • Ruff checks pass.
  • Formatting checks pass.
  • Pyright checks pass.
  • The package builds successfully.
  • New functionality includes appropriate tests.
  • Public API changes are documented.

See CONTRIBUTING.md for development and contribution guidelines.

License

This project is licensed under the terms defined in LICENSE.

Release files for yb-observability 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for yb-observability 0.1.2
File Size Uploaded
yb_observability-0.1.2.tar.gz 6.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for yb-observability 0.1.2
File Interpreter ABI Platform
yb_observability-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 12.3 kB

Release files / yb_observability-0.1.2.tar.gz

Download URL yb_observability-0.1.2.tar.gz
Size 6.3 kB
Tags Source
SHA-256 checksum
How to use checksums
fde3f4651782b9896d45e6ffe0b3bc4704484676a9f49dce12bfea7826ec90e7
BLAKE2b-256 checksum
How to use checksums
7e3e645aca2ee80bd85d93155977ac447781a27bc94ad261978308391fb0ce22
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 13, 2026.

Transparency log

Release files / yb_observability-0.1.2-py3-none-any.whl

Download URL yb_observability-0.1.2-py3-none-any.whl
Size 5.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b840a5a3d47b273f59fe16a2795a5e1f629c62ad87c1a304eb8bd62c24ee8379
BLAKE2b-256 checksum
How to use checksums
41bdf0042ded012f0b0fc06956798138f8e8276ec5a738072270b26ebbdd5b92
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 13, 2026.

Transparency log

Release history Release notifications | RSS feed

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page