Skip to main content

Shared chassis (logging, etc.) for JUGS services

Project description

jugs-chassis

jugs-chassis is a shared JUGS library that provides reusable utilities for multiple services.

It is designed for cross-cutting concerns that should be imported directly by services (for example: logging setup and shared runtime conventions), instead of being exposed as a standalone service.

Why this package exists

In JUGS, some capabilities are best delivered as code dependencies rather than API calls.

Using jugs-chassis as a dependency makes it easier to:

  • Reuse the same behavior across services.
  • Keep service internals consistent.
  • Ship functionality (not inter-service data exchange) in a versioned Python package.

Current scope

At the moment, the primary implemented utility is logging configuration.

The logging setup is currently tuned for one service context. As the microservices chassis effort progresses, this will be normalized so all JUGS services can use a common logging standard in later versions.

Installation

Dockerizing and using in services independently

pip install jugs-chassis

Installing as a dependency (e.g., inside Dockerized services)

cd libs/jugs_chassis
pip install .

Developing locally (cloning the repository)

from jugs_chassis.logging import configure_logging, set_request_id

configure_logging()
set_request_id('req-123')

Optional environment variables commonly used by the logging module include:

  • LOG_LEVEL
  • WERKZEUG_LEVEL
  • LOG_SERVICE
  • LOG_ENV
  • LOG_DIR_BASE

JUGS

JUGS is a sector-based carbon-emission evaluation framework built with a microservices architecture.

Each module runs as an independent service (a "jug"). Current services focus on building life-cycle assessment and city-scale geospatial cleaning/validation workflows. Alongside services, JUGS also includes shared Python libraries such as jugs-chassis to provide reusable internal functionality.

Roadmap note

jugs-chassis will continue to grow as a shared library for JUGS services, with future versions expanding beyond logging into additional standardized service utilities.

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

jugs_chassis-0.1.2.tar.gz (16.2 kB view details)

Uploaded Source

Built Distribution

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

jugs_chassis-0.1.2-py3-none-any.whl (15.0 kB view details)

Uploaded Python 3

File details

Details for the file jugs_chassis-0.1.2.tar.gz.

File metadata

  • Download URL: jugs_chassis-0.1.2.tar.gz
  • Upload date:
  • Size: 16.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for jugs_chassis-0.1.2.tar.gz
Algorithm Hash digest
SHA256 8c25d069b3df8bb5bdb25ea1f8718fdbfdca34e3016063267a2293a3d200b698
MD5 2c5ce4126c3b1d2e5cbed8cbf7e9fb7d
BLAKE2b-256 02d14e888cb0e0bc17cc2fabdd4aee934ef9c664f8cb646c502071d885f5732c

See more details on using hashes here.

File details

Details for the file jugs_chassis-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: jugs_chassis-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 15.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for jugs_chassis-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5e2aa02692a1229fd60d94c6a887fe6570b603b0a19d0e3aaf4660816dafb36a
MD5 a9e483d908f8900b61df66dafe029c4b
BLAKE2b-256 250383d08af38f4f609ef627c033191bc4aae0864db45ed4538b0e04fb191a1f

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