LogicMonitor用のMicrosoftAzureAppServiceでのアプリケーションの自動インストルメンテーション
最終更新日: 27 年 2023 月 XNUMX 日Microsoft Azure App Serviceを使用してアプリケーションを管理する場合は、AzureAppServiceでそれらのアプリケーションのトレースデータを収集するように環境を構成できます。
LogicMonitorがAzureAppService上のアプリケーションからトレースデータを確実に受信するには、次の手順を実行する必要があります。
- AzureAppServiceでアプリケーションをインストルメント化します。
- OpenTelemetryCollectorにトレースデータを送信するようにアプリケーションを構成します。
推奨事項: アプリケーションをインストルメント化する前に、OpenTelemetryコレクターをAzureコンテナーインスタンスにデプロイします。 アプリケーションをインストルメント化するには、OpenTelemetryCollectorのエンドポイントが必要です。 詳細については、を参照してください。 MicrosoftAzureコンテナーインスタンスでのOpenTelemetryCollectorデプロイメントの構成.
Microsoft AzureAppServiceでアプリケーションを自動的にインストルメント化するための要件
Azure App Serviceでアプリケーションを自動的にインストルメント化するには、次の手順を実行する必要があります。
- Azureストレージアカウントを作成する
詳細については、Microsoftのを参照してください。 ストレージアカウントを作成する のドキュメントで詳しく説明されています)。 - Azureポータルでコンテナーを作成します
詳細については、Microsoftのを参照してください。 クイックスタート:Azureポータルでblobをアップロード、ダウンロード、および一覧表示します のドキュメントで詳しく説明されています)。
さらに、ファイルをコンテナにアップロードするには、OpenTelemetryからJavaエージェントJARファイルをダウンロードする必要があります。 JavaエージェントJARファイルの詳細については、OpenTelemetryのを参照してください。 自動計装 のドキュメントで詳しく説明されています)。
AzureAppServiceでのアプリケーションのインストルメント化
ご注意: 以下では、サンプルアプリケーションの例としてJavaを使用しています。 アプリケーションの言語については、OpenTelemetryの該当するドキュメントを参照してください。
- Linuxコンテナにストレージをマウントする (またはコンテナのプラットフォームに該当するドキュメント)Microsoftの AppServiceのローカル共有としてAzureStorageをマウントする 設定を構成するためのドキュメント。
- ストレージアカウントとコンテナを選択します。
- 入力します
/java-jar
マウントパスに設定を保存します。
アプリケーションはJavaエージェントJARファイルで再起動し、アプリケーションを自動的にインストルメント化します。
トレースデータを送信するようにアプリケーションを構成する
LogicMonitorがAzureAppService上のアプリケーションからトレースデータを受信できるようにするには、アプリケーションの構成ファイルを変更して、AzureContainerInstanceにデプロイされたOpenTelemetryCollectorにトレースをエクスポートするようにアプリケーションに指示する変数を含める必要があります。
Microsoftのを使用する クイックスタート:AzureAppServiceでJavaアプリを作成する アプリケーションを作成およびデプロイするためのドキュメント(またはアプリケーションの言語に該当するドキュメント)、および以下を追加します <appSetting>
あなたの構成へのプロパティ pom.xml
アプリケーションをデプロイする前:
<appSettings>
<property>
<name>JAVA_OPTS</name>
<value>-javaagent:/java-jar/opentelemetry-javaagent-all.jar -Dotel.traces.exporter=otlp -Dotel.resource.attributes=host.name=HOST_NAME,service.name=SERVICE_NAME,service.namespace=SERVICE_NAMESPACE,resource.type=host -Dotel.exporter.otlp.insecure=true -Dotel.exporter.otlp.endpoint=CONTAINER_INSTANCE_PRIVATE_IP:4371 -Dotel.metrics.exporter=none</value>
</property>
</appSettings>
推奨事項: キープ CONTAINER_INSTANCE_PRIVATE_IP
AzureコンテナインスタンスIPとして。
推奨事項: アプリケーションがトレースデータをLogicMonitorに安全に送信するようにするには、AzureポータルにOpenTelemetry Collectorをデプロイするために作成したプライベート仮想ネットワーク統合を使用して、AzureコンテナーインスタンスからLogicMonitorポータルへのプライベート接続を許可します。 詳細については、Microsoftのを参照してください。 AzureAppServiceで仮想ネットワークの統合を有効にする 仮想ネットワークを構成に追加するためのドキュメント。