.NET のゼロコード計装¶
Beacon .NET はネイティブインストールパッケージと、クロスプラットフォームの beacon-dotnet コマンドを提供します。次の例は x64 の Debian または Ubuntu 向けです。ほかの OS やアーキテクチャでは、リリースページで対応するパッケージを選んでください。
接続前に共通設定を完了し、DataKit OpenTelemetry コレクターを有効にしてください。以下は Linux/macOS のシェルの例で、アプリケーションと DataKit が同じホストにあることを前提とします。別ホストやコンテナに配置する場合は、127.0.0.1 を置き換え、リッスンアドレスを調整してください。
インストール¶
上記のリリースページから Linux x64 用の .deb パッケージをダウンロードし、現在のディレクトリに beacon-dotnet.deb として保存してから、次のコマンドを実行してください。
起動¶
export OTEL_SERVICE_NAME=my-dotnet-service
export OTEL_EXPORTER_OTLP_ENDPOINT=http://127.0.0.1:4317
export OTEL_EXPORTER_OTLP_PROTOCOL=grpc
beacon-dotnet run dotnet MyApp.dll
run は子プロセスにのみエージェントを有効にします。Beacon .NET は現在、ユーザーが設定できる継続的な Profile をサポートしていないため、Profile の環境変数は不要です。
デバッグと診断¶
まずインストール状態を確認し、書き込み可能なディレクトリを指定してエージェントのデバッグログを保存します。
beacon-dotnet status
mkdir -p beacon-dotnet-logs
OTEL_LOG_LEVEL=debug OTEL_DOTNET_AUTO_LOGGER=file \
OTEL_DOTNET_AUTO_LOG_DIRECTORY="$PWD/beacon-dotnet-logs" \
beacon-dotnet run dotnet MyApp.dll
OTEL_DOTNET_AUTO_LOG_DIRECTORY には、実際のアプリケーションプロセスの実行ユーザーが書き込める必要があります。端末で診断ログを確認する場合は、OTEL_DOTNET_AUTO_LOGGER を console に変更できます。
調査後は通常の起動コマンドに戻してください。サービス設定にこれらのデバッグ変数を追加した場合は、削除してアプリケーションを再起動します。
接続の確認¶
対応するフレームワークやライブラリを経由するリクエストをアプリケーションの API に送り、Guance の「APM > トレース」で上記のサービス名を絞り込んでください。確認手順の詳細は共通設定を、データがない場合はトラブルシューティングを参照してください。