OpenTelemetry Python的仪器工具和自动仪器化
项目描述
安装
pip install opentelemetry-instrumentation
此软件包提供帮助自动对程序进行仪器化的命令
opentelemetry-bootstrap
opentelemetry-bootstrap [-a |--action=][install|requirements]
此命令安装默认的检测包,并检测活动 Python 站点包,以确定用户可能想要安装哪些检测包。默认情况下,它会打印出可以添加到 requirements.txt 文件中的默认和检测到的检测包列表。它还支持在运行时带有 --action=install
或 -a install
标志时安装包。所有默认和可检测的检测包都在此处定义 这里 <https://github.com/flands/opentelemetry-python-contrib/blob/main/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py>。
opentelemetry-instrument
opentelemetry-instrument python program.py
检测命令将尝试自动检测您的 Python 程序使用的包,并在可能的情况下,对它们应用自动跟踪检测。这意味着您的程序将获得自动分布式跟踪,而无需对代码进行任何更改。这还将配置全局跟踪器和跟踪导出器以及仪表和仪表导出器。默认情况下,检测命令将使用 OTLP 导出器,但可以覆盖。
命令支持以下配置选项作为 CLI 参数和环境变量
--traces_exporter 或 OTEL_TRACES_EXPORTER
--metrics_exporter 或 OTEL_METRICS_EXPORTER
--distro 或 OTEL_PYTHON_DISTRO
--configurator 或 OTEL_PYTHON_CONFIGURATOR
导出器选项定义要使用的导出器目标,并可以设置为一个或多个导出器名称(见下文)。您可以通过传递多个值来配置多个导出器(例如,zipkin_json,otlp)。
默认为 otlp。
可以设置为 none 以禁用自动跟踪器初始化。
可以设置为 'console' 以在本地显示 JSON 结果。
跟踪导出器名称
jaeger_proto
jaeger_thrift
opencensus
otlp
otlp_proto_grpc (已弃用)
otlp_proto_http (已弃用)
zipkin_json
zipkin_proto
仪表导出器名称
otlp
otlp_proto_grpc (已弃用)
prometheus
注意:otlp 的默认传输协议是 gRPC。
--id-generator 或 OTEL_PYTHON_ID_GENERATOR
用于指定全局跟踪提供者要使用的 IDs 生成器。默认情况下,它将使用随机 IDs 生成器。
program.py 中的代码需要使用具有 OpenTelemetry 集成的包之一。有关可用集成列表,请检查 这里
OTEL_PYTHON_DISABLED_INSTRUMENTATIONS
如果用户设置,opentelemetry-instrument 将读取此环境变量以禁用特定的检测。例如,OTEL_PYTHON_DISABLED_INSTRUMENTATIONS = “requests,django”
示例
opentelemetry-instrument --traces_exporter console flask run --port=3000
上述命令将 --traces_exporter console 传递给检测命令,并将 --port=3000 传递给 flask run。
opentelemetry-instrument --traces_exporter zipkin_json,otlp celery -A tasks worker --loglevel=info
上述命令将配置全局跟踪提供者,将 zipkin 和 otlp 导出器附加到它,然后使用其余参数启动 celery。
opentelemetry-instrument --id_generator random flask run --port=3000
以上命令将配置全局跟踪提供程序使用随机ID生成器,然后将--port=3000传递给flask run。
参考资料
项目详情
哈希值 for opentelemetry_instrumentation-0.48b0.tar.gz
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 94929685d906380743a71c3970f76b5f07476eea1834abd5dd9d17abfe23cc35 |
|
MD5 | 5ff8651b5c04d3143e2e0e503c7c053a |
|
BLAKE2b-256 | 040ed9394839af5d55c8feb3b22cd11138b953b49739b20678ca96289e30f904 |
哈希值 for opentelemetry_instrumentation-0.48b0-py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a69750dc4ba6a5c3eb67986a337185a25b739966d80479befe37b546fc870b44 |
|
MD5 | 05a903e81927041a8cfeec0f2eb52ea3 |
|
BLAKE2b-256 | 0a7f405c41d4f359121376c9d5117dcf68149b8122d3f6c718996d037bd4d800 |