Skip to main content

A high-performance, buffered, non-blocking logger for Python, implemented in Rust.

Project description

High-Performance Python Logger (in Rust)

PyPI version Downloads Py Versions

A high-performance, buffered, non-blocking logger for Python, with the core logic implemented in Rust for maximum speed and efficiency.

This logger is designed for high-throughput applications where standard Python logging would become a bottleneck. It sends logs on a dedicated background thread, ensuring your application's main threads are never blocked by I/O.

Features

  • Non-Blocking: Log calls return instantly.
  • Batching: Logs are sent to destinations in efficient batches (Elastic bulk API).
  • Resilient: In-memory buffer with retries for when destinations are temporarily unavailable.
  • Multiple Outputs: Configure logging to stdout, files, and Elasticsearch simultaneously.
  • Python logging Integration: Includes a logging.Handler to seamlessly integrate with the standard library.

Requirements

  • Python 3.9+
  • pip version 21 or newer.

This package uses modern Python packaging standards (PEP 517). Older versions of pip may not be able to install it correctly. You can upgrade pip with the following command:

pip install --upgrade pip

Pre-compiled wheels for officially Supported Platforms

  • Linux: x86_64 (manylinux compatible)
  • macOS: arm64 (Apple Silicon, Intel)
  • Windows: amd64

Installation

pip install py-hpl-logger

Quick Start

1(Optional). Configure your logger with ElasticConfig if needed:

ELASTIC_HOST=localhost
ELASTIC_PORT=9200
ELASTIC_USERNAME=elastic
ELASTIC_PASSWORD=changeme
ELASTIC_INDEX=my-python-logs

Configure using code:

elastic_config = ElasticConfig(
    host="localhost",
    port=9200,
    index="my-app",
    username="elastic",
    password="changeme"
)

Configure using .env. You can choose .env search depth using local_only argument:

elastic_config = ElasticConfig.from_env(local_only=False)
  1. Use the logger in your Python application:

    import logging
    from py_hpl_logger import LoggerBuilder, ElasticConfig, RustLogHandler
    
    # 1. Build the Rust logger backend once
    elastic_config = ElasticConfig(
        host="localhost",
        port=9200,
        index="my-app",
        username="elastic",
        password="changeme"
    )
    # default buffer params:
    # channel_size: 4096
    # batch_size: 256
    # `channel_size` sets maximum inner buffer size. If log amount exceeds this argument, over limiting logs are dropped to avoid memory leaks
    # `batch_size` is an argument used to bulk push amount of logs specified
    rust_backend = (
        LoggerBuilder()
        .with_stdout(True) # whether to use stdout or not
        .with_file_output("my_app_session")
        .with_elastic_output(elastic_config)
        .with_batch_size(1000) # how many log rows to wait before forced flush
        .with_flush_interval(1.0) # # how many seconds to wait before forced flush
        .build()
    )
    
    # 2. Integrate with Python's standard logging
    handler = RustLogHandler(rust_logger=rust_backend)
    formatter = logging.Formatter("%(threadName)s - %(message)s")
    handler.setFormatter(formatter)
    logger.addHandler(handler)
    
    # 3. Use the standard logging API anywhere!
    log = logging.getLogger(__name__)
    log.info("This log is being handled by Rust!")
    log.error("This is a high-performance error log.")
    
    # 4. For graceful shutdown, flush the logger before exiting
    # (The logger also attempts to flush automatically on exit)
    rust_backend.flush()
    

Benchmark

Measurements completed under python3.11 on Apple M2 Max using remote Elastic Search instance with 2 Gb memory limit. The logger version used is py-hpl-logger==0.2.1.

20.000 messages were successfully written in a total time of 2.0091 seconds

    --- Running Benchmark for: High-Performance Rust Logger ---
    Logging 20,000 messages across 10 threads...
    Time taken for High-Performance Rust Logger: 0.1128 seconds
    Throughput: 177,282.63 logs/second

    Flushing Rust logger buffer...
    Flush took an additional 1.8963 seconds.

    --- Benchmark Results ---
    The application code was blocked for 0.1128 seconds with the Rust logger.
    Throughput: 177,282.63 logs/second
    Logs written: 20,000
    Time taken for flush: 1.8963 seconds
    Total time: 2.0091 seconds

Changelog

[0.1.5] - 2025-11-04

  • Added 'with_channel_size' constructor to LoggerBuilder

[0.1.6] - 2025-11-04

  • Added win_amd64 support
  • Added macos_x86_64 support
  • Added benchmark results

[0.1.9] - 2025-11-06

  • Added 'with_base_log' constructor to LoggerBuilder to add a base prefix '[<event.timestamp>] <event.level>:'
  • Fixed potential malloc problems in stdout buffer
  • Improved buffer offload with async elastic/file write execution

[0.2.0] - 2025-11-07

  • Fixed macos binaries imports

[0.2.1] - 2025-11-08

  • Added log file rotation. Now 5 files of 10Mb are set for rotation as a default setting. File rotation can be disabled with 'without_file_rotation' builder.
  • File rotation can be configured with 'with_file_rotation' builder. It accepts max_file_size_bytes: int, max_backup_files: int as arguments where max_file_size_bytes is the maximum size of each file in bytes and max_backup_files is the maximum number of files to keep
  • Added graceful file writing at the cost of an 8% log throughput decrease

License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

py_hpl_logger-0.2.1-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl (2.4 MB view details)

Uploaded PyPymusllinux: musl 1.2+ x86-64

py_hpl_logger-0.2.1-pp311-pypy311_pp73-musllinux_1_2_i686.whl (2.3 MB view details)

Uploaded PyPymusllinux: musl 1.2+ i686

py_hpl_logger-0.2.1-pp311-pypy311_pp73-musllinux_1_2_armv7l.whl (2.3 MB view details)

Uploaded PyPymusllinux: musl 1.2+ ARMv7l

py_hpl_logger-0.2.1-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl (2.4 MB view details)

Uploaded PyPymusllinux: musl 1.2+ ARM64

py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ s390x

py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.6 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ppc64le

py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (2.2 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARMv7l

py_hpl_logger-0.2.1-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl (2.4 MB view details)

Uploaded PyPymusllinux: musl 1.2+ x86-64

py_hpl_logger-0.2.1-pp310-pypy310_pp73-musllinux_1_2_i686.whl (2.3 MB view details)

Uploaded PyPymusllinux: musl 1.2+ i686

py_hpl_logger-0.2.1-pp310-pypy310_pp73-musllinux_1_2_armv7l.whl (2.3 MB view details)

Uploaded PyPymusllinux: musl 1.2+ ARMv7l

py_hpl_logger-0.2.1-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl (2.4 MB view details)

Uploaded PyPymusllinux: musl 1.2+ ARM64

py_hpl_logger-0.2.1-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ s390x

py_hpl_logger-0.2.1-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.6 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ppc64le

py_hpl_logger-0.2.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARMv7l

py_hpl_logger-0.2.1-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl (2.4 MB view details)

Uploaded PyPymusllinux: musl 1.2+ x86-64

py_hpl_logger-0.2.1-pp39-pypy39_pp73-musllinux_1_2_i686.whl (2.3 MB view details)

Uploaded PyPymusllinux: musl 1.2+ i686

py_hpl_logger-0.2.1-pp39-pypy39_pp73-musllinux_1_2_armv7l.whl (2.3 MB view details)

Uploaded PyPymusllinux: musl 1.2+ ARMv7l

py_hpl_logger-0.2.1-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl (2.4 MB view details)

Uploaded PyPymusllinux: musl 1.2+ ARM64

py_hpl_logger-0.2.1-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ s390x

py_hpl_logger-0.2.1-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.6 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ppc64le

py_hpl_logger-0.2.1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARMv7l

py_hpl_logger-0.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

py_hpl_logger-0.2.1-cp313-cp313t-musllinux_1_2_i686.whl (2.3 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ i686

py_hpl_logger-0.2.1-cp313-cp313t-musllinux_1_2_armv7l.whl (2.3 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARMv7l

py_hpl_logger-0.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl (2.4 MB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

py_hpl_logger-0.2.1-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.1 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ s390x

py_hpl_logger-0.2.1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.6 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ppc64le

py_hpl_logger-0.2.1-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.1 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARMv7l

py_hpl_logger-0.2.1-cp39-abi3-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.9+Windows x86-64

py_hpl_logger-0.2.1-cp39-abi3-musllinux_1_2_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ x86-64

py_hpl_logger-0.2.1-cp39-abi3-musllinux_1_2_i686.whl (2.3 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ i686

py_hpl_logger-0.2.1-cp39-abi3-musllinux_1_2_armv7l.whl (2.3 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ ARMv7l

py_hpl_logger-0.2.1-cp39-abi3-musllinux_1_2_aarch64.whl (2.4 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ ARM64

py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ x86-64

py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl (2.1 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ s390x

py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.6 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ppc64le

py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (2.2 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ i686

py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.1 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARMv7l

py_hpl_logger-0.2.1-cp39-abi3-macosx_11_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

py_hpl_logger-0.2.1-cp39-abi3-macosx_10_12_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.9+macOS 10.12+ x86-64

File details

Details for the file py_hpl_logger-0.2.1-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 53f288e89034509464cebf35485300bf502d6f5d0e96eefa29cb4f9a991ad310
MD5 5d77fbbe7d9fbed067931beeff287fcf
BLAKE2b-256 a54e0dde792af78bf9b13e692d6abe42acc3e5bb9fc69bace3f02f0d802dd92c

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp311-pypy311_pp73-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp311-pypy311_pp73-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 7ef85e6100dadceea6c76f9a4d2b46b8b2b8bdde3c897532c084ba8681ff181e
MD5 6ba672e7ad3d5c2834864bb0229dc79a
BLAKE2b-256 f624ccfc2cf24aacac98626d35c19653d6c5765f109bfbdcef3e0c0aaa4be0ea

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp311-pypy311_pp73-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp311-pypy311_pp73-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 5eded78c95c7b75458da6e53c531b5fdef83a386ad7c78628e794301a54b04ca
MD5 cb0a683b34b117aaafddf196eeaec9bb
BLAKE2b-256 5b339854fab1f36d54a104bcfb5a36e4e8107fc2f8eedc577561dab84aa3e48a

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 049ca46d607ba2c4c8168f8c1f03450f77056cfb96fbab9df6e555cfce035d21
MD5 9c2654484473918e182e048860439a0f
BLAKE2b-256 92b390a5746e42c92ae19547dfe59fd62657be778662e1a41a12c06fea0b052f

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9baea01ea8760ac093dcb43abb322a21c1269dfb00ed7d94f5fd3c9b25ea7cf6
MD5 2a0998afe51a368136674f32923e3d16
BLAKE2b-256 76a8435edb55d71e3a96ca43c6da3608438dbbb78888c8a81778067e5edf0107

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 14fb783e9b5ac0fb2e042589c9291ed407c31b8b785dd457db1088701a8b7259
MD5 4470572c1ca8dc29a5198a204ef2a459
BLAKE2b-256 d3827831bf3a916d5c66802bd317ac71c6a8e9b8a8e320a94254aa17dfceb6a7

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 3582b1fcb6b42625d12ef7ed81c52450b03890d99119f1c1db525f1f3a8e0855
MD5 a0ed0749aa80730c23f292015a3e2db1
BLAKE2b-256 b912204e97e167ae7a4a6cabcd777b2be5703d927b20d8075887126de044d6cd

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 39ddf99f640d96bd105b02edb990b1481e17837caada1b3b6cef162744d7a37a
MD5 7682706104085ca3b728948c903c0f3c
BLAKE2b-256 53f291b8fafffb4f7663543d3c0068344ccf1ec977560f2ed47e44a575962c4c

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp311-pypy311_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 deda6f4c2bb47d95d71d4303f37852ed7c44328a8bf70899f852ca604a7664b3
MD5 fecc9a8b82deaa069df2ce78576301d5
BLAKE2b-256 9f0d4b8e33eceae1198a5738afc2f684123c5129373c0672d6832372798803dc

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4baf663a8b26c872b408f4d6cfb7701be8e9a9fdce9657c1e39ecf3cc85aee77
MD5 91b65cd59313f8d6a080029d291b3a07
BLAKE2b-256 2272e891b127648b003f3843f8e14168a1bec02057ed731093d845f6a2d1c8df

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp310-pypy310_pp73-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp310-pypy310_pp73-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 8693fe7ae8835289d9b0e88a400647442dd8020d1511e69970344ab9be805894
MD5 a365f176eae43421ca5b48f6aa4fdc25
BLAKE2b-256 004ec2afb712e2b9a5564c5c5445c47815543a0dc0bb039be4232a40475184e6

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp310-pypy310_pp73-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp310-pypy310_pp73-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 eddba07df168f805a8667168dea5ca1e1cf638c329487d89ceb2096ca40b1802
MD5 431325f617c001e7f252c55444bf56f0
BLAKE2b-256 aa422ebaf78ca817a1ebda753c20a959a868e66aa47b810e108f243f538c8ce0

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 05fad5638d9ee6b13f0ed3140e5403bd4cba14db1441f984dfac1b301952b828
MD5 fe3801d76892e114248bd25a08128815
BLAKE2b-256 5e834768dc935d858200c93f24126c88d05d4964fe896e0a174dbf4d0534ddf8

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 434be5f3c86a86d53e545df9e6b6fdbe466b56dabb2618c3fb7d0fb99d6548cc
MD5 c5d9c290db201376673883f6293c51d3
BLAKE2b-256 c2d9bcd81ad5c78b4c2af2fea6d61c5a96ceeab1811e0a560fd97490e5493d67

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 e88d82e4e546428f150d6d92f92441a29d029b96cd8e615fc71faf4be31231ad
MD5 b15a790dec0558bf403e881d92e810a6
BLAKE2b-256 e1774833f5ed79e37df29d82c0314a85ba8570cf2f3381f08d66cc145f007bc8

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 ade0f0466976cc33b2c68c8e9e5470a452e3d5404ddfab369a1df474cc93714b
MD5 2ae707b05570ec71c831219e12ee2d4d
BLAKE2b-256 27bf746af778fe643320da5f054625f66ed1e6482a1ac24eae0a0142a67dea2a

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 cef041ae2090a6bcd35085dc390e36a91241dad3ddf8b2b678aa716eb8e5857b
MD5 b31f9b08246fffcd4c338477d36f290e
BLAKE2b-256 6966529ae05d5503874c9e8521ee46e7dc681953a2eba877fb0dacfc3d051828

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp39-pypy39_pp73-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp39-pypy39_pp73-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 1d2575f6ffd8c1b19f6956d18d503f15a2ef4aae377c51398f77ec9633765d3e
MD5 b1b7ecb01089cd6d7a77fb4d679c3d0a
BLAKE2b-256 281e99cb7cc38e0012dc9376df96389a10a149b7130f8b230f19fbe59e5b2302

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp39-pypy39_pp73-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp39-pypy39_pp73-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 d98d1efec41fe935724eccc6937305dcec47325abe5ade3c1f1fc15aa8ded89d
MD5 9f2bbde00ac0af876ee64b1349317221
BLAKE2b-256 f62615bb738aeea28e68b77bca9e4c598d1625ce0c7f649aacefded158cbffe0

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f37b9fde7b86ad470b667fcfa3e7f4fa269882f3a6a47dbb87a544e71bcd041c
MD5 cd1f3507403ec69c27e1ea7b8321979c
BLAKE2b-256 21ed61d84618e508c2326deb887c49c073092161e97772b03c571b741d8f5a5a

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 21ed11dd7d815a508ba4009e19161373efc2c8a7edcb61876fc3c7c3b7f83e69
MD5 536acdb90b5f57b0c56f7ba57667de93
BLAKE2b-256 950d63019e26193d3326bcd3e9184669888b28a2ee4e357e01afb25ed853c4a5

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 1596ccd76e034386483688dd44b7a4f731cc306195749829a86d5e1adb081e18
MD5 3a0929d0da6719b1f586a3b6705ba606
BLAKE2b-256 a24789cc306e05ed5c486ee85e2ad077f4f98d08b54e839b1edf5a76df9253ee

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 b632bcd7c32c61069454101d89b16cb523e7f1f7d2396b63bf1a3c560e726f9c
MD5 14f8f7135c755472a5ad5eb655f248cf
BLAKE2b-256 384344297ffa45b2252d8625a28a1f069a6561bd005112253ba0e7c88906de8a

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1a776d8783bb5d1d7896ac45ff8791520b80b76fba44c0eb43e1276b99623d9c
MD5 d87bb844ead615854d3180d7f6f57afd
BLAKE2b-256 d4036e6f3db687355962c55ddcf7265e094eb9a8dc4d32cbd517f491613eeadd

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp313-cp313t-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp313-cp313t-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 c2496bf2d070bcb8ba83e8c47186d48a055eea24bcd9a148f6e1790f8f52ad3d
MD5 7fac5bca6b25bd5fd39475e89fb15ba0
BLAKE2b-256 6dbb94eb53d61d7404826c62744e779255818d2368d5639ab946653ad0be6d60

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp313-cp313t-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp313-cp313t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 cf65f0debb887943826967dceccbf82c24d751d057f7368126ec98dd7f55e087
MD5 e851d972269efb4792e45da7b91d196a
BLAKE2b-256 8e968ea65e83bd49242ac69ad70ff2abe9f7d3e220500a56ba62d326280f7a77

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8b448b2204e5b0ca2bf8c6379355bc064b8c8f8d16e005b37068f1d4d7f37bcb
MD5 3f227e2645c43b12c87bbcf9906026f2
BLAKE2b-256 0ab40fc45fdf1f781aea396ea6059a1077da650144ce8196a7a8b37eaf78061e

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 b2b3bfe3c22b86fd45e82c1f1c0551d98928072edb4fff1feeed4bc1857919d2
MD5 ae2daf527e03622704dc699df1a2a7e5
BLAKE2b-256 0f8c5bb512f98d2c1743530c92cba490fd08a5fa79d58144b51f3aa1a50dba14

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 b5c062f9f693ff073b1713530d45e68659b8233f099db09bbf25e08050079406
MD5 4e850d2c7c8acc1a8ef010fa1dde8d17
BLAKE2b-256 2fa727f845b36bef251cde0afc261777488966d2ba1f60948dd59a91423d1fc1

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 5b01a218ae67fbb99595707fef12377be06e07ffbca7123d629709f4fac3be88
MD5 b7a67e6d92060aa6bd010a06fe23e753
BLAKE2b-256 6b5f2b9aceea42a7d091f3c3689e7e3c9ece80c48a8a542f90b51ca0aa7920d5

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp39-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 194f6ed6df78a6d80ba5650e3155148ccb6e78168fc7a980008a3bef000f7f86
MD5 9b40aec13c50742de9ebea900eae5a09
BLAKE2b-256 87dbfb4b847a349843a0b02e12aff9827467fcda86fc2716a440e9464df423bb

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp39-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp39-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1ff56c98f558ae74e4e3ddc0b61bb4e083b22716358c7a923be972ad63124960
MD5 2018f54bd5b424132808c6c207e2a8a1
BLAKE2b-256 98184ad1f1e3dbca9233722841eaaa01e700e679c4b570c14c5d78bff9e0cbab

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp39-abi3-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp39-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 173b8349aed4c45a460246c667dd75e1b0923f38369c639399d85ae4308cdf45
MD5 891fe1e4e74f65c174563fbcc09d0768
BLAKE2b-256 82aa59ffb45a81a1bb605fa17a01cc111f3f8ba81ca175a41a3a35898a080cb5

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp39-abi3-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp39-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 9dc4d7ba90cd4865c08966d2465117d6ef6a7a81cf7000ed06f3fb004b8c1709
MD5 dea70712f9dbf753f6bb89a3babaf515
BLAKE2b-256 393bafa43d71f6a1a8c2455e4975353c0676cad088e450bb8e0a131283038f9d

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp39-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp39-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 1937cbbfc61708f4e1139b436d04ffd659badb6706be4a63046d8ca1aeffc547
MD5 58578a9920ff948e1c082d76aee95421
BLAKE2b-256 3f37cfee3b51041f63c257b7117b05258d2c7be08e8b3d731d25c30bf1406d68

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b763157468bc4c4c7f3061e54300b217ecd4fbf2d930d3714eb89384cca082ba
MD5 d1f7aa061852ce86e4d3777623d5b323
BLAKE2b-256 6bdb30b3e640529ff5526884178daa7c4c6ec1202bcafbe2c749b30e22a4c3c1

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 bf49d27373f08bf46e0a53a50dab4a44664a5a0a91ea8bdb79d9138fb737692e
MD5 6a85b70d66f73ba3bac1284e5a8353a7
BLAKE2b-256 cc53c8183c05e84c0fccce13624baf6c2c9150fd86c7ea0bb9d8660de4a08fe3

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 5e183ab6d295c73127b2a8b988148ad16105358a5b19e52d7793236c785fe395
MD5 5582593c18143adfc94694c5675938e9
BLAKE2b-256 32487b31d14a7f1366b5358002be06797168862b8291e68a1235e3d8fcc96aff

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 65b61207652b402986f5346215456f43728b2dfa7c3e42d82d435e261789f2be
MD5 da2c57341d957a4a4c6042a9b00d976c
BLAKE2b-256 1160f40a4c7ac1f511ea5478e756f9bebd76907f6c49006c7007082b28d41a41

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 13def9fd55630d06586a91836b75daec65f3a5e5e54166824f9e92d4042b3852
MD5 e826b8f7631684dba1710c8b89f9d5ea
BLAKE2b-256 a036490b89a96f1afb7bcda065cf827ac756f6b292a695945edb81c52402a951

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6cd020fb2fe3306c7bd47cb6d56a5269deab311c002dbde4a811028a96c9464b
MD5 f4f1473a8c3fa147f2de44eb0afbfce5
BLAKE2b-256 e31c2256e6a557f9de87662bafae81cf56150cbbf4acf249e119ccad514fb573

See more details on using hashes here.

File details

Details for the file py_hpl_logger-0.2.1-cp39-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for py_hpl_logger-0.2.1-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1c78b8bd735a933180c2dcf047f64b3db0621ca3aad1c6b4de5918cd2c3e66c3
MD5 06f75d560229a8170040e3d70d9e77e6
BLAKE2b-256 a97f89e835f24cff876847ba3f889fc5afdaf1171550e69170a825484345b823

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