9

Application Insights を Web アプリケーションと共に Azure にデプロイする際に、鶏が先か卵が先かという問題があります。ARM テンプレートでは、Application Insights モジュールはアプリケーション ID の Web サイトに依存しています (以下の ARM テンプレートの依存関係を参照してください)。一方、Web アプリケーションを完全にインストルメント化するには、Application Insights モジュールからのインストルメンテーション キーが必要です。これをどのように回避しますか?

ポータルからの Application Insights ビュー

ポータルの Application Insights モジュール

Web アプリ用の ARM テンプレート

Web アプリ ARM テンプレート

Application Insights の ARM テンプレート

アプリ インサイト アーム テンプレート

4

3 に答える 3

0

Mikl X の回答を詳しく説明するには、Web サイトをアプリケーション インサイト リソースに依存させ、Web サイトのアプリ設定でインストルメンテーション キーを設定します。

関係のない部分をスキップする:

    "resources": [
        {
            "type": "Microsoft.Insights/components",
            "name": "[variables('appInsightsName')]"
            ... more config
        },
        {
            "type": "Microsoft.Web/sites",
            "name": "[variables('apiName')]",
            "dependsOn": [
                "[resourceId('Microsoft.Insights/components', variables('appInsightsName'))]" <-- ensure app insights is created first
            ],
            "properties": {
                "siteConfig": {
                    "appSettings": [
                        {
                            "name": "APPINSIGHTS_INSTRUMENTATIONKEY",
                            "value": "[reference(variables('appInsightsName')).InstrumentationKey]" <-- use key of previously created resource
                        }
                    ]
                }
            }
        }
        ... more config
    ]
于 2020-03-23T14:42:44.867 に答える