Skip to main content

No project description provided

Project description

▍▞ PJ logging

Simple logging with rich Panels and jsonl (or plain .log) files

Basic Usage

set_logger arguments, with types and defaults:

def set_logger(
    name: str | None = None,
    *,
    jsonl_log_file_path: pathlib.Path | str | None = None,
    jsonl_log_file_size: int = 100_000,
    jsonl_log_backup_count: int = 3,
    rich_panel_log: bool = False,
) -> logging.Logger: ...

Example, with rich's Panels only

import pj_logging

logger = pj_logging.set_logger(rich_panel_log=True)


...


logger.info("this is an info log with a rich Panel in the terminal")

Advanced usage

The set_logger function uses the logging RotatingFileHandler (docs) for the output file

For different needs, the JsonlFormatter can be assigned to a different handler

The PanelHandler can also be imported and added to an existing logger.

With this approach, it's possible to change values of the class' attributes before adding the handler to the logger.

    colors: t.ClassVar[dict[str, str]] = {
        "Debug": "blue",
        "Info": "green",
        "Warning": "yellow",
        "Error": "red",
        "Critical": "red",
    }
    fallback_color: str = "white"
    title_align: rich.align.AlignMethod = "left"
    show_error_names: bool = True

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

pj_logging-0.1.1.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

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

pj_logging-0.1.1-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file pj_logging-0.1.1.tar.gz.

File metadata

  • Download URL: pj_logging-0.1.1.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for pj_logging-0.1.1.tar.gz
Algorithm Hash digest
SHA256 3b7483c6fa82fed329ef576842ede2b8bf7947abbf6eb94bbe718208be668d2d
MD5 dadb40f873725a150a72beeec4d06107
BLAKE2b-256 1275aa440636cf2d9fe68dc19b26c3e531e224c6b59048fc2f5d91fd05c35ad1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pj_logging-0.1.1.tar.gz:

Publisher: publish.yml on the-citto/pj-logging

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pj_logging-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: pj_logging-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for pj_logging-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5f89455b738250316619776761f81e180ab25b938763fc549ed0daa9331eafd6
MD5 059fb0a198af1032b7f4636d00034c8e
BLAKE2b-256 ca80ba5453af6219a5c976e11bd856d4629986e3a76409cda748922ce292260e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pj_logging-0.1.1-py3-none-any.whl:

Publisher: publish.yml on the-citto/pj-logging

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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