Pythonゼロコード・計装
Pythonによる自動計装は、任意のPythonアプリケーションにアタッチ可能なPythonエージェントを使用します。 このエージェントは、主にモンキーパッチを使用して、実行時にライブラリ関数を変更し、多くの一般的なライブラリとフレームワークからのテレメトリーデータのキャプチャを可能にします。
セットアップ
以下のコマンドを実行して、適切なパッケージをインストールします。
pip install opentelemetry-distro opentelemetry-exporter-otlp
opentelemetry-bootstrap -a install
opentelemetry-distro
パッケージは API、SDK、opentelemetry-bootstrap
と opentelemetry-instrument
ツールをインストールします。
自動計装を動作させるには、distro パッケージをインストールする必要があります。 opentelemetry-distro
パッケージには、デフォルトの distro が含まれており、いくつかの一般的なオプションを自動的に設定できます。 詳しくは、OpenTelemetry distro を参照してください。
opentelemetry-bootstrap -a install
コマンドは、アクティブな site-packages
フォルダにインストールされているパッケージのリストを読み込んで、該当するパッケージがあれば、対応する計装ライブラリをインストールします。 たとえば、既に flask
パッケージをインストールしている場合、 opentelemetry-bootstrap -a install
を実行すると、かわりに opentelemetry-instrumentation-flask
がインストールされます。 OpenTelemetry Python エージェントはモンキーパッチを使って、実行時にこれらのライブラリの関数を変更します。
引数なしで opentelemetry-bootstrap
を実行すると、インストールされる推奨計装ライブラリが一覧表示されます。 詳細については、opentelemetry-bootstrap
を参照してください。
uvパッケージマネージャーを使用している場合、opentelemetry-bootstrap -a install
を実行する際に何らかの困難に直面するかもしれません。 詳しくはuvを使ったブートストラップを参照してください。
エージェントの設定
エージェントは高度に設定可能です。
選択肢の1つめは、CLIから設定プロパティによってエージェントを設定することです。
opentelemetry-instrument \
--traces_exporter console,otlp \
--metrics_exporter console \
--service_name your-service-name \
--exporter_otlp_endpoint 0.0.0.0:4317 \
python myapp.py
あるいは、環境変数を使ってエージェントを設定することも可能です。
OTEL_SERVICE_NAME=your-service-name \
OTEL_TRACES_EXPORTER=console,otlp \
OTEL_METRICS_EXPORTER=console \
OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=0.0.0.0:4317
opentelemetry-instrument \
python myapp.py
設定オプションの全範囲を見るには、エージェント設定を参照してください。
サポートされるライブラリとフレームワーク
Flask や Django など、人気のある Python ライブラリの多くが自動計装に対応しています。 全リストは レジストリ を参照してください。
トラブルシューティング
一般的なトラブルシューティングの手順と特定の問題に対する解決策については、トラブルシューティング を参照してください。
フィードバック
このページは役に立ちましたか?
Thank you. Your feedback is appreciated!
Please let us know how we can improve this page. Your feedback is appreciated!