Azure CLIスクリプトを使用して、Azure App ServiceでSpring Bootアプリケーションをホストしています。また、Azure CLIスクリプトを使用して、同じサブスクリプションにAzure Application Insightsをデプロイしました。次のステップは、az
コマンドと補足ファイルのみを使用してApp InsightsをApp Serviceに接続することです。
私が通過したこのアプリの洞察コードレス道を接続する方法に関するドキュメント。しかし、リクエスト、依存関係、例外などの多くのメトリックがまだ不足しているように見えました(ただし、クラスパスにはマイクロメトリックがあります)。Application Insights | 検索には痕跡しかなかったので、Azure Portalから接続しようとしたところ、うまくいきました。この統合によりアプリケーションが再起動し、私が知らない魔法をかけました。
これは、Azure PortalからApp Insightsに接続する前と後の画像です。
App Serviceの構成を調べたところ、ドキュメントに記載されていないいくつかの新しい値が見つかりました。
{
"XDT_MicrosoftApplicationInsights_PreemptSdk": "disabled",
"XDT_MicrosoftApplicationInsights_Mode": "recommended",
"XDT_MicrosoftApplicationInsights_BaseExtensions": "disabled",
"SnapshotDebugger_EXTENSION_VERSION": "disabled",
"InstrumentationEngine_EXTENSION_VERSION": "disabled",
"DiagnosticServices_EXTENSION_VERSION": "~3",
"APPINSIGHTS_PROFILERFEATURE_VERSION": "1.0.0",
"APPINSIGHTS_INSTRUMENTATIONKEY": "key",
"APPINSIGHTS_SNAPSHOTFEATURE_VERSION": "1.0.0",
"ApplicationInsightsAgent_EXTENSION_VERSION": "~2"
}
したがって、私の質問は「Azure CLIスクリプトでこのボタンをどのように模倣して、ログとメトリックにまったく同じ影響を与えるか」です。
このAzure CLIスクリプトを使用して、Application Insightsのコードレスな方法でSpring Webapp Serviceに接続できました。
az webapp config appsettings set \
-n ${APP_NAME} \
-g ${GROUP_NAME} \
--settings \
APPINSIGHTS_INSTRUMENTATIONKEY=${APPINSIGHTS_INSTRUMENTATIONKEY} \
APPINSIGHTS_PROFILERFEATURE_VERSION=${APPINSIGHTS_PROFILERFEATURE_VERSION} \
APPINSIGHTS_SNAPSHOTFEATURE_VERSION=${APPINSIGHTS_SNAPSHOTFEATURE_VERSION} \
APPLICATIONINSIGHTS_CONNECTION_STRING=${APPLICATIONINSIGHTS_CONNECTION_STRING} \
ApplicationInsightsAgent_EXTENSION_VERSION=\
${ApplicationInsightsAgent_EXTENSION_VERSION} \
DiagnosticServices_EXTENSION_VERSION=${DiagnosticServices_EXTENSION_VERSION} \
InstrumentationEngine_EXTENSION_VERSION=${InstrumentationEngine_EXTENSION_VERSION} \
SnapshotDebugger_EXTENSION_VERSION=${SnapshotDebugger_EXTENSION_VERSION} \
JAVA_OPTS="${APP_SERVICE_JAVA_OPTS}" \
JAVA_TOOL_OPTIONS="${APP_SERVICE_JAVA_TOOL_OPTIONS}"
これが私の環境変数です:
{
"SnapshotDebugger_EXTENSION_VERSION": "disabled",
"InstrumentationEngine_EXTENSION_VERSION": "disabled",
"DiagnosticServices_EXTENSION_VERSION": "~3",
"APPLICATIONINSIGHTS_CONNECTION_STRING": "InstrumentationKey=key",
"APPINSIGHTS_PROFILERFEATURE_VERSION": "1.0.0",
"APPINSIGHTS_INSTRUMENTATIONKEY": "a19c8795-c19e-4388-ae5c-e11432787689",
"APPINSIGHTS_SNAPSHOTFEATURE_VERSION": "1.0.0",
"ApplicationInsightsAgent_EXTENSION_VERSION": "~2",
"APP_SERVICE_JAVA_TOOL_OPTIONS": "-javaagent:/home/site/wwwroot/applicationinsights-agent.jar -Dserver.port=80"
}
ご覧のとおり、config-zipデプロイメントを使用してデプロイメント中に自分でコピーしたjarであるapplicationinsights-agent.jarへのパスがあります。
cp ./build/libs/app-0.0.1-SNAPSHOT.jar ./deploymentrepo/app.jar
cp ./build/resources/main/applicationinsights-agent*.jar ./deploymentrepo/applicationinsights-agent.jar
cd ./deploymentrepo
zip target.zip -r ./*
az webapp deployment source config-zip \
--src target.zip \
-n ${ANALYTICS_APP_NAME} \
-g ${ANALYTICS_GROUP_NAME}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加