未提供项目描述
项目描述
在当前opentelemetry不支持多进程模式的情况下,使用prometheus_client多进程模式(例如gunicorn、celery)的解决方案。
此包提供定制的MeterProvider,使用原生的prometheus_client度量实现,因此使用它们的导出/展示机制(而不是opentelemetry的)。
用法
有关如何操作此包的详细信息,请参阅多进程模式文档。
将环境变量PROMETHEUS_MULTIPROC_DIR设置为一个目录,其中prometheus_client可以存储其度量状态文件(这些文件通过mmap在进程之间共享)。
配置opentelemetry度量提供程序
from opentelemetry.sdk.extension.prometheus_multiprocess import PrometheusMeterProvider import opentelemetry.metrics provider = PrometheusMeterProvider() opentelemetry.metrics.set_meter_provider(provider)
设置prometheus度量展示,例如
registry = prometheus_client.CollectorRegistry() prometheus_client.multiprocess.MultiProcessCollector(registry) prometheus_client.start_http_server(8080, registry=registry)
(此包还提供MultiProcessRegistry以简化此设置。)
像往常一样使用opentelemetry度量
meter = opentelemetry.metrics.get_meter('mypackage', 'myversion') HTTP_DURATION = metrics.create_histogram('http.client.duration', unit='ms') from timeit import default_timer start = default_timer() # perform request here duration = (default_timer() - start) * 1000 HTTP_DURATION.record(duration, {'http.response.status_code': 200})
变更日志
1.1.0 (2024-06-25)
变更
命名:遵守prometheus度量名称和单位约定(命名)
1.0.0 (2024-04-26)
变更
初始发布(初始)
项目详情
关闭
哈希值 for opentelemetry_sdk_extension_prometheus_multiprocess-1.1.0.tar.gz
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 0674fcd4646c283b40aa68851044298f34f79d7ea3961e7eaea35d6ca0fb69de |
|
MD5 | d6069b5fbb0ee0bec16ab08243ccfd7b |
|
BLAKE2b-256 | 4aa977b07ce57fb7d71506f8149df795ac44b547468e607b19a3326b54e0a879 |
关闭
哈希值 for opentelemetry_sdk_extension_prometheus_multiprocess-1.1.0-py2.py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 90b9618f08efc2441c1f28ac315c7c55ed352729f8ea798a66434b1d2f7718c8 |
|
MD5 | 800f209ae39187493a7b9f93bec4dbfa |
|
BLAKE2b-256 | 55b3920efd40c2abba930f7345170994f86e59409637724c3cb55a1b6539676e |