Анализ журналов с помощью Elastic (ELK), используя параметры диагностики

Примечание.

Azure Spring Apps — это новое название службы Azure Spring Cloud. Старое название будет еще некоторое время встречаться в наших материалах, пока мы не обновим ресурсы, такие как снимки экрана, видео и схемы.

Эта статья применима к: ✔️ Java ✔️ C#

Эта статья относится к: ✔️ Basic/Standard ✔️ Enterprise

В этой статье показано, как использовать возможности диагностики Azure Spring Apps для анализа журналов с помощью Elastic (ELK).

В следующем видео описывается комплексная наблюдаемость для приложений Spring Boot с Elastic.


Настройка параметров диагностики

Чтобы настроить параметры диагностики, выполните следующие действия.

  1. Перейдите к экземпляру своей службы Azure Spring Apps на портале Azure.
  2. Выберите параметры диагностики, а затем нажмите кнопку Добавить параметр диагностики.
  3. Введите имя параметра, нажмите кнопку Send to partner solution (Отправить в партнерское решение), а затем выберите Elastic и эластичное развертывание, в которое вы будете отправлять журналы.
  4. Выберите Сохранить.

Снимок экрана: портал Azure, на котором показана страница параметров диагностики с выбранными параметрами и именем, указанным для параметра.

Примечание.

С момента передачи журналов до их появления в развертывании может пройти до 15 минут. Если экземпляр Azure Spring Apps удален или перемещен, операция не будет выполняться каскадно для ресурсов параметров диагностики. Перед выполнением операции с экземпляром Azure Spring Apps необходимо вручную удалить его дочерние ресурсы параметров диагностики. В противном случае, если вы подготовите к работе новый экземпляр Azure Spring Apps с тем же идентификатором ресурса, который был у удаленного экземпляра, или переместите обратно тот же экземпляр Azure Spring Apps, он будет автоматически дополнен этими ресурсами параметров диагностики.

Анализ журналов с помощью Elastic

Дополнительные сведения о развертывании Elastic в Azure см. на этой странице.

Чтобы проанализировать журналы, выполните следующие действия.

  1. На странице обзора развертывания Elastic на портале Azure откройте Kibana.

    Снимок экрана: страница портал Azure, на котором показана страница Elasticsearch (Elastic Cloud) с выделенной ссылкой

  2. В Kibana введите в строку поиска в верхней части экрана значение Spring Cloud type:dashboard.

    Снимок экрана: Elastic / Kibana, в котором показаны результаты поиска для типа Spring Cloud:dashboard.

  3. В результатах поиска выберите [Журналы Azure] Журналы Azure Spring Apps.

    Снимок экрана: Elastic / Kibana, на котором показаны журналы консоли приложений Azure Spring Apps.

  4. Выполните поиск по встроенным панелям мониторинга Azure Spring Apps, используя запросы следующего вида:

    azure.springcloudlogs.properties.app_name : "visits-service"
    

Анализ журналов в Discover с помощью языка запросов Kibana

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

  1. В Kibana введите в строку поиска вверху значение Discover, а затем выберите полученный результат.

    Снимок экрана: Elastic / Kibana, в котором показаны результаты поиска для обнаружения.

  2. В приложении Discover выберите шаблон индекса logs-, если он еще не выбран.

    Снимок экрана: Elastic / Kibana, на котором показана страница журналов в приложении

  3. Примените запросы такого вида, как в следующих разделах, чтобы изучить текущее состояние приложения и его прошлые состояния.

Дополнительные сведения о запросах см. в руководстве по языку запросов Kibana.

Отображение всех журналов из Azure Spring Apps

Чтобы просмотреть список журналов приложений из Azure Spring Apps, отсортированный по времени, начиная с самых последних журналов, выполните следующий запрос в окне Поиск:

azure_log_forwarder.resource_type : "Microsoft.AppPlatform/Spring"

Снимок экрана: Elastic / Kibana, на котором показано приложение

Отображение определенных типов журналов из Azure Spring Apps

Чтобы просмотреть список журналов приложений из Azure Spring Apps, отсортированный по времени, начиная с самых последних журналов, выполните следующий запрос в окне Поиск:

azure.springcloudlogs.category : "ApplicationConsole"

Снимок экрана: Elastic / Kibana, на котором показано приложение

Отображение записей журналов, содержащих ошибки или исключения

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

azure_log_forwarder.resource_type : "Microsoft.AppPlatform/Spring" and (log.level : "ERROR" or log.level : "EXCEPTION")

Снимок экрана: Elastic / Kibana, в котором отображается приложение

Язык запросов Kibana помогает формировать запросы аналитических сведений из журналов, выполняя автозавершение и предоставляя предложения. Этот запрос позволяет искать ошибки или менять условия запроса таким образом, чтобы находить конкретные исключения или коды ошибки.

Отображение записей журнала из определенной службы

Чтобы просмотреть записи журнала, созданные определенной службой, выполните следующий запрос:

azure.springcloudlogs.properties.service_name : "sa-petclinic-service"

Снимок экрана: Elastic / Kibana, на котором показано приложение

Отображение журналов сервера конфигурации с предупреждениями или ошибками

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

azure.springcloudlogs.properties.type : "ConfigServer" and (log.level : "ERROR" or log.level : "WARN")

Снимок экрана: Elastic / Kibana, показывающий приложение

Отображение журналов реестра служб

Чтобы просмотреть журналы реестра служб, выполните следующий запрос:

azure.springcloudlogs.properties.type : "ServiceRegistry"

Снимок экрана: Elastic / Kibana, показывающий приложение

Визуализация журналов из Azure Spring Apps с помощью Elastic

Kibana позволяет визуализировать данные с помощью панелей мониторинга и богатой экосистемы визуализаций. Дополнительные сведения см. в статье Панель мониторинга и визуализация.

Выполните следующие действия, чтобы отобразить разные уровни журналов, чтобы оценить общую работоспособность служб.

  1. В списке доступных полей слева на панели обнаружения найдите log.level с помощью поля поиска с шаблоном индекса logs-.

  2. Выберите поле log.level. На плавающей информационной панели для log.level выберите действие Визуализировать.

    Снимок экрана: Elastic / Kibana, на котором показано приложение

  3. Здесь вы можете добавить дополнительные данные из области слева или выбрать одно из нескольких предложений по визуализации данных.

    Снимок экрана: Elastic / Kibana, показывающий приложение

Следующие шаги