Поделиться через


Сбор журналов самодиагностики для пакетов SDK для Application Insights

При инструментировании приложения с помощью автоматического инструментирования Application Insights или ручного инструментирования с помощью пакета SDK для Application Insights могут возникнуть проблемы с самим пакетом SDK для Application Insights. В этом сценарии журналы диагностики пакета SDK для Application Insights необходимы для выявления и диагностики проблем с Application Insights.

В этой статье описывается сбор журналов самодиагностики для следующих пакетов SDK для Application Insights:

Application Insights .NET/.NET Core Framework SDK

Начиная с версии 2.18.0-beta2 пакета SDK для Application Insights для .NET/.NET Core Framework функция самостоятельного диагностика предоставляется для сбора журналов из самого пакета SDK и записи их в файл журнала в указанном каталоге.

Конфигурация с диагностика

Настройте самостоятельное диагностика с помощью файла с именем ApplicationInsightsDiagnostics.json, который содержит следующее содержимое:

{
    "LogDirectory": "<LogDirectory>",
    "FileSize": <FileSize>,
    "LogLevel": "<LogLevel>"
}

Примечание.

  • Файл конфигурации для самостоятельного диагностика должен содержать допустимые параметры для анализа пакета SDK для Application Insights для .NET/.NET Core Framework. Если файл недопустим или неправильно сформирован, пакет SDK проигнорирует его, а самостоятельное диагностика не будет включено. Однако это не повлияет на нормальное функционирование отслеживаемого приложения.
  • Этот файл конфигурации должен иметь размер не более 4 килобайт (КБ). В противном случае будут считываться только первые 4 КБ содержимого.
  • Пакет SDK для .NET/.NET Core Framework Application Insights будет пытаться считывать файл конфигурации каждые 10 секунд и создавать или циклическую перезапись файла журнала.

Ниже приведены некоторые объяснения параметров конфигурации.

Параметры конфигурации Описание
LogDirectory Каталог, в котором хранится файл журнала. Это может быть абсолютный или относительный путь к текущему рабочему каталогу веб-приложения. Этот файл журнала называется YearMonthDay-HourMinuteSecond.ExecutableName.ProcessId.log, например 20220307-193542.w3wp.exe.7692.log. Имя файла начинается с метки времени, созданной при создании файла.
FileSize Положительное целое число, указывающее размер файла журнала в КБ. Это значение должно быть от 1 мегабайта (МБ) до 128 МБ (включительно), иначе оно будет округлено до ближайшего верхнего или нижнего предела. Размер файла журнала не будет превышать заданный максимальный размер.
LogLevel Уровень регистрируемых событий. Это значение должно соответствовать одному из полей EventLevelобъекта . Более низкие уровни серьезности включают более высокие уровни серьезности (например, Warning включает уровни Error и Critical ).

Самостоятельное диагностика веб-приложения

Чтобы включить самостоятельное диагностика, перейдите в текущий рабочий каталог веб-приложения и создайте файл конфигурации ApplicationInsightsDiagnostics.json.

Чтобы отключить самостоятельное диагностика, удалите файл конфигурации. Даже во время выполнения веб-приложения можно включить или отключить само диагностика без необходимости перезапускать приложение.

В большинстве случаев файл можно удалить вместе с приложением. Найти текущий рабочий каталог можно двумя способами:

  • В Windows используйте Обозреватель обработки.

    Откройте Обозреватель процесса, выберите процесс и откройте диалоговое окно Свойства. Найдите Текущий каталог в разделе Файл образа.

  • GetCurrentDirectory Вызовите методы и , AppContext.BaseDirectory чтобы получить текущий рабочий каталог.

Самостоятельное диагностика для веб-приложения Служба приложений в Windows

  1. Перейдите к веб-приложению Служба приложений из портал Azure.

  2. Перейдите на страницу Kudu, выбрав Дополнительные инструменты>Go.

  3. На панели мониторинга Kudu выберите Командная панель отладки консоли>CMD.

  4. Перейдите в каталог, в котором находится Служба приложений веб-приложение, например D:\home\site\wwwroot.

  5. Используйте символ "+" в верхней части панели мониторинга Kudu, чтобы создать файл в папке wwwroot и присвоить ему имя , чтобы ApplicationInsightsDiagnostics.json.

    Файл ApplicationInsightsDiagnostics.json необходимо поместить в папку <drive>:\home\site\wwwroot . Не все Служба приложений веб-приложения находятся на одном диске. Некоторые могут находиться на диске C:, а некоторые — на диске D:. Чтобы найти его, проверка поля Папка сайта и Временная папка на странице Kudu по умолчанию.

    Снимок экрана: поля

  6. Измените и добавьте следующую конфигурацию в файл ApplicationInsightsDiagnostics.json :

    {
        "LogDirectory": "<drive>:\home\site\wwwroot",
        "FileSize": 5120,
        "LogLevel": "Verbose"
    }
    

    Примечание.

    Для LogDirectory простого доступа параметру следует задать расположение в разделе <диск>:\home , но при наличии достаточного доступа другие расположения допустимы.

  7. Сохраните файл.

    Через 10 секунд в папке wwwroot появится новый файл журнала, например 20220307-193542.w3wp.exe.7692.log.

  8. Удалите файл конфигурации или переименуйте его в ApplicationInsightsDiagnostics.bak.

    Через 10 секунд ведение журнала прекратится.

Самостоятельное диагностика для веб-приложения Служба приложений в Linux

  1. На локальном компьютере создайте файл и присвойте ему имя, чтобы ApplicationInsightsDiagnostics.json.

  2. Измените файл и добавьте следующее содержимое:

    {
        "LogDirectory": ".",
        "FileSize": 5120,
        "LogLevel": "Verbose"
    } 
    
  3. Сохраните файл.

  4. Перейдите к веб-приложению Служба приложений из портал Azure.

  5. Перейдите на страницу Kudu, выбрав Дополнительные инструменты>Go.

  6. После запуска сеанса браузера добавьте /newui в конец URL-адреса. URL-адрес в браузере должен выглядеть так: https://<appname>.scm.azurewebsites.net/newui.

  7. Нажмите клавишу ВВОД. Откроется страница Kudu с новым пользовательским интерфейсом.

  8. В меню слева выберите Диспетчер файлов.

  9. Выберите папку Сайт , а затем выберите папку wwwroot .

  10. Перетащите файл ApplicationInsightsDiagnostics.json в папку wwwroot .

    Через 10 секунд в папке wwwroot появится новый файл журнала, например 20220307-193542.w3wp.exe.7692.log.

  11. Удалите файл конфигурации или переименуйте его в ApplicationInsightsDiagnostics.bak.

    Через 10 секунд ведение журнала прекратится.

Application Insights Java 2.x

Вы можете собирать журналы диагностика для Application Insights Java 2.6 или более ранней версии. Для этого добавьте элемент в корневой <SDKLogger> узел файла конфигурации ApplicationInsights.xml (в папке resources в проекте). В элементе <SDKLogger> можно указать средству ведения журнала вывод в файл.

Ниже приведен пример файлаApplicationInsights.xml :

<SDKLogger type="FILE"><!-- or "CONSOLE" to print to stderr -->
    <Level>TRACE</Level>
    <UniquePrefix>AI</UniquePrefix>
    <BaseFolderPath>C:/agent/AISDK</BaseFolderPath>
</SDKLogger>

Дополнительные сведения см. в статье Устранение неполадок приложение Azure Insights в веб-проекте Java.

Application Insights Java 3.x

Вы можете собирать журналы диагностика для Application Insights Java 3.x, используя функцию "самостоятельного диагностика". Для этого см. раздел Самостоятельное диагностика.

Свяжитесь с нами для получения помощи

Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.