Ошибка при установке Application Insights в кластере Service Fabric

#azure #azure-service-fabric #azure-application-insights

#лазурный #azure-service-структура #azure-аналитика приложений

Вопрос:

У меня есть существующий кластер Service Fabric с приложением, которое я получил в нем из образцов Azure, прямо сейчас я пытаюсь включить Application Insights для мониторинга кластера. после создания Application Insight я скопировал строку подключения и перешел к наборам масштаба виртуальной машины, затем я установил расширение Application Insights с этимстрока подключения, которая у меня была, но после завершения процесса установки я получаю это сообщение об ошибке

 VM has reported a failure when processing extension 'ApplicationMonitoringWindows'. Error message: "Failed to enable application monitoring for IIS: System.IO.FileNotFoundException: Cannot find applicationHost.config at C:windowsSystem32inetsrvconfigapplicationHost.config File name: 'C:windowsSystem32inetsrvconfigapplicationHost.config' at Microsoft.ApplicationInsights.Redfield.Configurator.RuntimeConfigurators.IISConfigurator.UpdateApplicationHostConfig(IAppInsightsConfiguratorLogger logger, Boolean enable, Boolean skipMissingApplicationHostConfig, ISystem system) at Microsoft.ApplicationInsights.Redfield.Configurator.RuntimeConfigurators.IISConfigurator.Enable(IRuntimePaths runtimePaths, IAppInsightsConfiguratorLogger logger, Boolean writeToApplicationHostConfig, Boolean skipMissingApplicationHostConfig, ISystem system) at Microsoft.ApplicationInsights.Redfield.Configurator.RedfieldConfigurator.Enable(IRuntimePaths runtimePaths, IAppInsightsConfiguratorLogger logger, RedfieldConfiguration redfieldConfiguration, Boolean enableInstrumentationEngine, Boolean writeToApplicationHostConfig, Boolean skipMissingApplicationHostConfig) at Microsoft.ApplicationInsights.VmExtensionHandler.VmExtensionHandler.Enable(HandlerEnvironment handlerEnvironment, String configSequenceNumber)" More information on troubleshooting is available at https://aka.ms/vmextensionwindowstroubleshoot
 

Я следовал этому документу и установил пользовательское расширение сценария powershell в том же наборе виртуальных машин, ниже приведен сценарий ps

 @{
  "redfieldConfiguration"= @{
    "instrumentationKeyMap"= @{
      "filters"= @(
        @{
          "appFilter"= ".*";
          "machineFilter"= ".*";
          "virtualPathFilter": ".*",
          "instrumentationSettings" : {
            "connectionString": "XXXXXXXXXXXXXXXXXXXXXX"
          }
        }
      )
    }
  }
};
$privateCfgHashtable = @{};

$vmss = Get-AzVmss -ResourceGroupName "XXXXX" -VMScaleSetName "XXXXX"

Add-AzVmssExtension -VirtualMachineScaleSet $vmss -Name "ApplicationMonitoring" -Publisher "Microsoft.Azure.Diagnostics" -Type "ApplicationMonitoringWindows" -TypeHandlerVersion "2.8" -Setting $publicCfgHashtable -ProtectedSetting $privateCfgHashtable

Update-AzVmss -ResourceGroupName $vmss.ResourceGroupName -Name $vmss.Name -VirtualMachineScaleSet $vmss
 

Есть ли что-то, чего мне не хватает? Спасибо!

Ответ №1:

Я бы рекомендовал вам следовать этому руководству из официальных документов для мониторинга вашего кластера SF.

Поскольку у вас уже есть .Запущенное приложение Net и настроенный ресурс App Insights можно использовать для передачи необходимой телеметрии.

Application Insights содержит два NuGets, специфичных для Service Fabric, которые можно использовать в зависимости от сценария. Один используется с собственными службами Service Fabric, а другой — с контейнерами и гостевыми исполняемыми файлами. Дополнительные сведения о пакете SDK Application Insights и специфичных для Service Fabric пакетах NuGet см. в разделе Microsoft Application Insights для Service Fabric.

Затем вы можете просмотреть телеметрию своего приложения в своем ресурсе Application Insights на портале Azure. Вы также можете добавить в свое приложение настраиваемые инструменты для улучшения диагностики, если это необходимо.