Skip to main content

gRPC Python CSM observability package

Project description

Package for gRPC Python CSM Observability.

Supported Python Versions

Python >= 3.8

Installation

Currently gRPC Python CSM Observability is only available for Linux.

Installing From PyPI

$ pip install grpcio-csm-observability

Installing From Source

$ export REPO_ROOT=grpc  # REPO_ROOT can be any directory of your choice
$ git clone -b RELEASE_TAG_HERE https://github.com/grpc/grpc $REPO_ROOT
$ cd $REPO_ROOT
$ git submodule update --init

$ cd src/python/grpcio_csm_observability

# For the next command do `sudo pip install` if you get permission-denied errors
$ pip install .

Dependencies

gRPC Python CSM Observability Depends on the following packages:

grpcio
grpcio-observability
opentelemetry-sdk

Usage

Example usage is similar to the example here, instead of importing from grpc_observability, you should import from grpc_csm_observability:

import grpc_csm_observability

csm_otel_plugin = grpc_csm_observability.CsmOpenTelemetryPlugin(
    meter_provider=provider
)

We also provide several environment variables to help you optimize gRPC python observability for your particular use.

  • Note: The term “Census” here is just for historical backwards compatibility reasons and does not imply any dependencies.

  1. GRPC_PYTHON_CENSUS_EXPORT_BATCH_INTERVAL
    • This controls how frequently telemetry data collected within gRPC Core is sent to Python layer.

    • Default value is 0.5 (Seconds).

  2. GRPC_PYTHON_CENSUS_MAX_EXPORT_BUFFER_SIZE
    • This controls the maximum number of telemetry data items that can be held in the buffer within gRPC Core before they are sent to Python.

    • Default value is 10,000.

  3. GRPC_PYTHON_CENSUS_EXPORT_THRESHOLD
    • This setting acts as a trigger: When the buffer in gRPC Core reaches a certain percentage of its capacity, the telemetry data is sent to Python.

    • Default value is 0.7 (Which means buffer will start export when it’s 70% full).

  4. GRPC_PYTHON_CENSUS_EXPORT_THREAD_TIMEOUT
    • This controls the maximum time allowed for the exporting thread (responsible for sending data to Python) to complete.

    • Main thread will terminate the exporting thread after this timeout.

    • Default value is 10 (Seconds).

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

grpcio_csm_observability-1.65.0rc1.tar.gz (16.1 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file grpcio_csm_observability-1.65.0rc1.tar.gz.

File metadata

File hashes

Hashes for grpcio_csm_observability-1.65.0rc1.tar.gz
Algorithm Hash digest
SHA256 d133187e68b4b85de2350433b008a121a49e6c04886f2e5b8f4a16c01161e8eb
MD5 3d7bffddd2cdfe2291b6b999f618cce5
BLAKE2b-256 f526a3113fc471924886ec9328c257f71de69acc443f08d09a1ee8b4245d09b6

See more details on using hashes here.

File details

Details for the file grpcio_csm_observability-1.65.0rc1-py3-none-any.whl.

File metadata

File hashes

Hashes for grpcio_csm_observability-1.65.0rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 f7f43d9a7d327d4c8186885653c59fadc13584651aee0ef0aa03f2544783a04a
MD5 89fef69bf8721fc51e2fbcca694ec9d9
BLAKE2b-256 54d945b7d5e4c7327410185d542d92bf09af73d3ad3311aa6c699eb5a8c15b2c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page