web-dev-qa-db-ja.com

リリースパイプライン/ ARMテンプレートからアプリケーションインサイトを設定する方法

Azure DevOpsリリースパイプラインがあり、すべてのAzureリソースを1つの場所にセットアップします。 ARMテンプレートを使用してすべてを正常に作成できますが、AppServiceをAppInsightsリソースにリンクするのに苦労しています。

手動で行う場合は、App ServiceのAppInsightsブレードにある[サイト拡張機能をオンにする]ボタンをクリックします([コードを再デプロイせずにサイト拡張機能を使用してアプリケーションインサイトを有効にする]という見出しの下)。

「AzureAppServiceの管理」ステップをリリースパイプラインに追加して、「AzureAppServiceのApplicationInsights拡張機能」拡張機能をインストールするように設定してみました。

Screenshot of Release Pipeline Step for Installing AppInsights

さらに、リリースパイプラインに「AzureApp Service Manage」ステップを追加し、「EnableContinuousMonitoring」に設定しました。

Screenshot of Release Pipeline Step for Enabling Continuous Monitoring

ただし、結果としてAppInsightsは接続されますが、拡張機能はインストールされません。

Screenshot of Azure Portal showing extension is not turned on

これを自動的に行う方法はありますか? ARMテンプレート、PowerShellスクリプト、またはその他の方法で?

編集:[拡張機能]ブレードに、「Azure AppServiceのApplicationInsights拡張機能」(v2.6.5)と「ASP.NETCore」が表示されます。 「ログ拡張機能」(v2.2.0)ですが、「アプリケーションインサイト」ブレードで「サイト拡張機能をオンにする」ように求められます。

5
Paul

アプリの設定キーがAPPINSIGHTS_INSTRUMENTATIONKEYではなくApplicationInsights:InstrumentationKeyであることを確認してください。 MSドキュメントのどこかで、どちらも使用できるという印象を与えます。実際にはそうではありません。Azureでは、前者を使用する必要があります。そうしないと、サーバー側のインサイトに対してApplicationInsightsが有効になりません。

0
Stuart Hallows