Мониторинг Azure Stream Analytics
В этой статье рассматриваются следующие вопросы:
- Типы данных мониторинга, которые можно собирать для этой службы.
- Способы анализа данных.
Примечание.
Если вы уже знакомы с этой службой и (или) Azure Monitor и просто хотите знать, как анализировать данные мониторинга, см . раздел "Анализ " в конце этой статьи.
При наличии критически важных приложений и бизнес-процессов, использующих ресурсы Azure, необходимо отслеживать и получать оповещения для системы. Служба Azure Monitor собирает и агрегирует метрики и журналы из каждого компонента системы. Azure Monitor предоставляет представление о доступности, производительности и устойчивости, а также уведомляет вас о проблемах. Вы можете использовать портал Azure, PowerShell, Azure CLI, REST API или клиентские библиотеки для настройки и просмотра данных мониторинга.
- Дополнительные сведения об Azure Monitor см. в обзоре Azure Monitor.
- Дополнительные сведения о том, как отслеживать ресурсы Azure в целом, см. в статье "Мониторинг ресурсов Azure" с помощью Azure Monitor.
Инструкции по мониторингу ресурсов Azure Stream Analytics и управлению ими с помощью командлетов Azure PowerShell и сценариев PowerShell см. в статье "Мониторинг заданий Stream Analytics" и управление ими с помощью командлетов Azure PowerShell.
Типы ресурсов
Azure использует концепцию типов ресурсов и идентификаторов для идентификации всего в подписке. Типы ресурсов также являются частью идентификаторов ресурсов для каждого ресурса, работающего в Azure. Например, для виртуальной машины используется Microsoft.Compute/virtualMachines
один тип ресурса. Список служб и связанных с ними типов ресурсов см. в разделе "Поставщики ресурсов".
Azure Monitor аналогично упорядочивает основные данные мониторинга в метрики и журналы на основе типов ресурсов, которые также называются пространствами имен. Различные метрики и журналы доступны для различных типов ресурсов. Служба может быть связана с несколькими типами ресурсов.
Дополнительные сведения о типах ресурсов для Azure Stream Analytics см . в справочнике по данным мониторинга Azure Stream Analytics.
Хранилище данных
Для Azure Monitor:
- Данные метрик хранятся в базе данных метрик Azure Monitor.
- Данные журнала хранятся в хранилище журналов Azure Monitor. Log Analytics — это средство в портал Azure, которое может запрашивать это хранилище.
- Журнал действий Azure — это отдельное хранилище с собственным интерфейсом в портал Azure.
При необходимости можно перенаправить данные журнала метрик и действий в хранилище журналов Azure Monitor. Затем с помощью Log Analytics можно запрашивать данные и сопоставлять их с другими данными журнала.
Многие службы могут использовать параметры диагностики для отправки данных метрик и журналов в другие расположения хранилища за пределами Azure Monitor. Примеры включают служба хранилища Azure, размещенные партнерские системы и системы партнеров, отличные от Azure, с помощью Центров событий.
Подробные сведения о том, как Azure Monitor хранит данные, см. на платформе данных Azure Monitor.
Метрики платформы Azure Monitor
Azure Monitor предоставляет метрики платформы для большинства служб. Эти метрики перечислены ниже.
- По отдельности определяется для каждого пространства имен.
- Хранится в базе данных метрик временных рядов Azure Monitor.
- Упрощенный и способный поддерживать оповещения практически в режиме реального времени.
- Используется для отслеживания производительности ресурса с течением времени.
Коллекция: Azure Monitor автоматически собирает метрики платформы. Настройка не требуется.
Маршрутизация. Вы также можете направлять некоторые метрики платформы в журналы Azure Monitor или Log Analytics, чтобы запросить их с другими данными журнала. Проверьте параметр экспорта DS для каждой метрики, чтобы узнать, можно ли использовать параметр диагностики для маршрутизации метрик в журналы Azure Monitor или Log Analytics.
- Дополнительные сведения см. в параметре диагностики метрик.
- Сведения о настройке параметров диагностики для службы см. в статье "Создание параметров диагностики" в Azure Monitor.
Список всех метрик, которые можно собрать для всех ресурсов в Azure Monitor, см. в статье "Поддерживаемые метрики в Azure Monitor".
Метрики Azure Stream Analytics
Описание отслеживания метрик в портал Azure см. в разделе "Мониторинг задания Stream Analytics" с помощью портал Azure.
Примечание.
Задания Azure Stream Analytics, созданные с помощью REST API, пакета SDK Azure или PowerShell, по умолчанию не поддерживают мониторинг. Чтобы включить мониторинг, выполните действия, описанные в статье "Программное создание монитора заданий Stream Analytics". Затем данные мониторинга отображаются в области метрик страницы портал Azure для задания Stream Analytics.
В следующей таблице перечислены условия и корректирующие действия для некоторых часто отслеживаемых метрик Azure Stream Analytics.
Метрика | Condition | Агрегат времени | За пороговое значение | Корректирующие действия |
---|---|---|---|---|
SU (память) % использования | Больше | По средней | 80 | Несколько факторов увеличивают использование единиц потоковой передачи. Вы можете увеличить масштаб путем параллелизации запросов или увеличить число единиц потоковой передачи. Дополнительные сведения см. в статье Использование параллелизации запросов в Azure Stream Analytics. |
Загрузка ЦП (в %) | Больше | По средней | 90 | Это может означать, что для некоторых операций (например, определяемых пользователем функций, определяемых пользователем агрегатов или сложной десериализации входных данных) требуется много циклов ЦП. Обычно эту проблему можно преодолеть, увеличив количество единиц потоковой передачи для задания. |
Ошибки среды выполнения | Больше | Итог | 0 | Изучите журналы действий или ресурсов и внесите соответствующие изменения во входные данные, запросы или выходные данные. |
Watermark Delay (Предельная задержка) | Больше | По средней | Если среднее значение метрики за последние 15 минут больше допустимого интервала поступления с задержкой (в секундах). Если вы не изменили допустимый интервал поступления с задержкой, значение по умолчанию устанавливается на 5 секунд. | Попробуйте увеличить число единиц потоковой передачи или выполнить параллелизацию запроса. Дополнительные сведения о единицах потоковой передачи см. в статье Обзор и настройка единиц потоковой передачи в Stream Analytics. Дополнительные сведения см. в статье Использование параллелизации запросов в Azure Stream Analytics. |
Ошибки десериализации входных данных | Больше | Итог | 0 | Изучите журналы действий или ресурсов и внесите соответствующие изменения во входные данные. Дополнительные сведения о журналах ресурсов см. в статье Устранение неполадок в Azure Stream Analytics с помощью журналов ресурсов. |
Список и описание всех доступных метрик для Azure Stream Analytics см . в справочнике по данным мониторинга Azure Stream Analytics.
Журналы ресурсов Azure Monitor
Журналы ресурсов предоставляют аналитические сведения об операциях, выполненных ресурсом Azure. Журналы создаются автоматически, но их необходимо перенаправить в журналы Azure Monitor, чтобы сохранить или запросить их. Журналы организованы по категориям. Заданное пространство имен может содержать несколько категорий журналов ресурсов.
Коллекция. Журналы ресурсов не собираются и хранятся, пока не создадите параметр диагностики и перенаправите журналы в одно или несколько расположений. Создавая параметр диагностики, нужно указать, какие категории журналов должны собираться. Существует несколько способов создания и обслуживания параметров диагностики, включая портал Azure, программно и хотя Политика Azure.
Маршрутизация: рекомендуемая по умолчанию — маршрутизация журналов ресурсов в журналы Azure Monitor, чтобы запросить их с другими данными журнала. Также доступны другие расположения, такие как служба хранилища Azure, Центры событий Azure и некоторые партнеры по мониторингу Майкрософт. Дополнительные сведения см. в журналах ресурсов Azure и назначениях журналов ресурсов.
Подробные сведения о сборе, хранении и маршрутизации журналов ресурсов см. в разделе "Параметры диагностики" в Azure Monitor.
Список всех доступных категорий журналов ресурсов в Azure Monitor см. в статье "Поддерживаемые журналы ресурсов" в Azure Monitor.
Все журналы ресурсов в Azure Monitor имеют одинаковые поля заголовков, а затем поля для конкретной службы. Общая схема показана в разделе Схема журнала ресурсов Azure Monitor.
Журналы Azure Stream Analytics
Azure Stream Analytics захватывает две категории журналов ресурсов:
Разработка — записывает в журналы события, связанные с операциями разработки заданий, такими как создание задания, добавление и удаление входных и выходных данных, добавление и обновление запроса, запуск и остановка задания.
Выполнение — записывает в журнал события, происходящие во время выполнения задания:
- Ошибки подключения.
- Ошибки обработки данных, в том числе:
- события, которые не соответствуют определению запроса (несовпадение типов полей и значений, отсутствие полей и т. п.);
- ошибки оценки выражений.
- Другие события и ошибки.
Доступные категории журналов ресурсов, связанные таблицы Log Analytics и схемы журналов для Azure Stream Analytics, см . в справочнике по данным мониторинга Azure Stream Analytics.
Подробное пошаговое руководство по устранению неполадок заданий Azure Stream Analytics с помощью журналов ресурсов см. в статье "Устранение неполадок Azure Stream Analytics с помощью журналов ресурсов".
Журнал действий Azure
Журнал действий содержит события уровня подписки, отслеживающие операции для каждого ресурса Azure, как видно извне этого ресурса; например, создание нового ресурса или запуск виртуальной машины.
Коллекция: события журнала действий автоматически создаются и собираются в отдельном хранилище для просмотра в портал Azure.
Маршрутизация. Вы можете отправлять данные журнала действий в журналы Azure Monitor, чтобы их можно было анализировать вместе с другими данными журнала. Также доступны другие расположения, такие как служба хранилища Azure, Центры событий Azure и некоторые партнеры по мониторингу Майкрософт. Дополнительные сведения о маршрутизации журнала действий см. в разделе "Обзор журнала действий Azure".
Подробное пошаговое руководство по устранению неполадок с заданиями Azure Stream Analytics с помощью журнала действий см. в статье Отладка с помощью журналов действий.
Анализ данных мониторинга
Существует множество средств для анализа данных мониторинга.
Средства Azure Monitor
Azure Monitor поддерживает следующие основные средства:
Обозреватель метрик— средство в портал Azure, позволяющее просматривать и анализировать метрики для ресурсов Azure. Дополнительные сведения см. в разделе "Анализ метрик" с помощью обозревателя метрик Azure Monitor.
Log Analytics— средство в портал Azure, позволяющее запрашивать и анализировать данные журнала с помощью языка запросов Kusto (KQL). Дополнительные сведения см. в статье Начало работы с запросами журнала в Azure Monitor.
Журнал действий, имеющий пользовательский интерфейс в портал Azure для просмотра и базового поиска. Для более подробного анализа необходимо направлять данные в журналы Azure Monitor и выполнять более сложные запросы в Log Analytics.
Средства, которые позволяют более сложной визуализации, включают:
- Панели мониторинга, позволяющие объединить различные виды данных в одну область в портал Azure.
- Книги, настраиваемые отчеты, которые можно создать в портал Azure. Книги могут включать текст, метрики и запросы журналов.
- Grafana — открытое средство платформы, которое работает на операционных панелях мониторинга. С помощью Grafana можно создавать панели мониторинга, содержащие данные из нескольких источников, отличных от Azure Monitor.
- Power BI— служба бизнес-аналитики, которая предоставляет интерактивные визуализации в различных источниках данных. Вы можете настроить Power BI на автоматический импорт данных журналов из Azure Monitor, чтобы воспользоваться этими визуализациями.
Средства экспорта Azure Monitor
Вы можете получить данные из Azure Monitor в другие средства с помощью следующих методов:
Метрики. Используйте REST API для метрик для извлечения данных метрик из базы данных метрик Azure Monitor. API поддерживает выражения фильтров для уточнения полученных данных. Дополнительные сведения см . в справочнике по REST API Azure Monitor.
Журналы: используйте REST API или связанные клиентские библиотеки.
Другим вариантом является экспорт данных рабочей области.
Сведения о начале работы с REST API для Azure Monitor см . в пошаговом руководстве по REST API мониторинга Azure.
Запросы Kusto
Данные мониторинга можно анализировать в хранилище журналов Azure Monitor или Log Analytics с помощью языка запросов Kusto (KQL).
Внимание
При выборе журналов в меню службы на портале Log Analytics откроется область запроса, заданная текущей службой. Эта область означает, что запросы журналов будут включать только данные из этого типа ресурса. Если вы хотите выполнить запрос, содержащий данные из других служб Azure, выберите журналы в меню Azure Monitor . Подробные сведения см. в статье Область запросов журнала и временной диапазон в Azure Monitor Log Analytics.
Список распространенных запросов для любой службы см. в интерфейсе запросов Log Analytics.
Примеры запросов
Ниже приведены примеры запросов, которые можно использовать для мониторинга ресурсов Azure Stream Analytics:
Вывод списка всех ошибок входных данных. В следующем запросе показаны все ошибки, которые произошли при обработке данных из входных данных.
AzureDiagnostics | where ResourceProvider == "MICROSOFT.STREAMANALYTICS" and parse_json(properties_s).Type == "DataError" | project TimeGenerated, Resource, Region_s, OperationName, properties_s, Level, _ResourceId
События, которые прибыли поздно. В следующем запросе отображаются ошибки из-за событий, в которых разница между временем приложения и временем прибытия превышает политику позднего прибытия.
AzureDiagnostics | where ResourceProvider == "MICROSOFT.STREAMANALYTICS" and parse_json(properties_s).DataErrorType == "LateInputEvent" | project TimeGenerated, Resource, Region_s, OperationName, properties_s, Level, _ResourceId
События, которые прибыли рано. В следующем запросе отображаются ошибки из-за событий, в которых разница между временем приложения и временем прибытия превышает 5 минут.
AzureDiagnostics | where ResourceProvider == "MICROSOFT.STREAMANALYTICS" and parse_json(properties_s).DataErrorType == "EarlyInputEvent" | project TimeGenerated, Resource, Region_s, OperationName, properties_s, Level, _ResourceId
События, поступающие из порядка. В следующем запросе отображаются ошибки из-за событий, поступающих из порядка в соответствии с политикой вне порядка.
// To create an alert for this query, click '+ New alert rule' AzureDiagnostics | where ResourceProvider == "MICROSOFT.STREAMANALYTICS" and parse_json(properties_s).DataErrorType == "OutOfOrderEvent" | project TimeGenerated, Resource, Region_s, OperationName, properties_s, Level, _ResourceId
Все ошибки выходных данных. В следующем запросе показаны все ошибки, которые произошли при записи результатов запроса в выходные данные в задании.
AzureDiagnostics | where ResourceProvider == "MICROSOFT.STREAMANALYTICS" and parse_json(properties_s).DataErrorType in ("OutputDataConversionError.RequiredColumnMissing", "OutputDataConversionError.ColumnNameInvalid", "OutputDataConversionError.TypeConversionError", "OutputDataConversionError.RecordExceededSizeLimit", "OutputDataConversionError.DuplicateKey") | project TimeGenerated, Resource, Region_s, OperationName, properties_s, Level, _ResourceId
В следующем запросе показана сводка неудачных операций за последние семь дней.
AzureDiagnostics | where TimeGenerated > ago(7d) //last 7 days | where ResourceProvider == "MICROSOFT.STREAMANALYTICS" and status_s == "Failed" | summarize Count=count(), sampleEvent=any(properties_s) by JobName=Resource
видны узлы
Оповещения Azure Monitor заранее уведомляют вас о конкретных условиях, обнаруженных в данных мониторинга. Оповещения позволяют выявлять и устранять проблемы в системе, прежде чем клиенты заметят их. Дополнительные сведения см. в оповещениях Azure Monitor.
Существует множество источников распространенных оповещений для ресурсов Azure. Примеры распространенных оповещений для ресурсов Azure см. в примерах запросов оповещений журнала. Сайт базовых оповещений Azure Monitor (AMBA) предоставляет полуавтомативный метод реализации важных оповещений метрик платформы, панелей мониторинга и рекомендаций. Сайт применяется к постоянно расширяющемуся подмножество служб Azure, включая все службы, которые являются частью целевой зоны Azure (ALZ).
Общая схема оповещений стандартизирует потребление уведомлений об оповещениях Azure Monitor. Дополнительные сведения см. в разделе "Общая схема оповещений".
Типов оповещений
Вы можете получать оповещения о любых источниках данных метрик или журналов на платформе данных Azure Monitor. Существует множество различных типов оповещений в зависимости от служб, которые вы отслеживаете, и данных мониторинга, которые вы собираете. Различные типы оповещений имеют различные преимущества и недостатки. Дополнительные сведения см. в разделе "Выбор правильного типа оповещений мониторинга".
В следующем списке описаны типы оповещений Azure Monitor, которые можно создать:
- Оповещения метрик оценивают метрики ресурсов через регулярные интервалы. Метрики могут быть метриками платформы, пользовательскими метриками, журналами из Azure Monitor, преобразованными в метрики или метриками Application Insights. Оповещения метрик также могут применять несколько условий и динамические пороговые значения.
- Оповещения журнала позволяют пользователям использовать запрос Log Analytics для оценки журналов ресурсов на предопределенной частоте.
- Оповещения журнала действий активируются при возникновении нового события журнала действий, соответствующего определенным условиям. Работоспособность ресурсов оповещения и оповещения о работоспособности служб — это оповещения журнала действий, которые сообщают о работоспособности службы и ресурсов.
Некоторые службы Azure также поддерживают оповещения интеллектуального обнаружения, оповещения Prometheus или рекомендуемые правила генерации оповещений.
Для некоторых служб можно отслеживать масштаб, применяя одно правило генерации оповещений метрик к нескольким ресурсам одного типа, которые существуют в одном регионе Azure. Для каждого отслеживаемого ресурса отправляются отдельные уведомления. Сведения о поддерживаемых службах и облаках Azure см. в статье "Мониторинг нескольких ресурсов с помощью одного правила генерации оповещений".
Правила генерации оповещений Azure Stream Analytics
В следующей таблице перечислены некоторые предлагаемые правила генерации оповещений для Azure Stream Analytics. Эти оповещения являются лишь примерами. Вы можете задать оповещения для любой метрики, записи журнала или записи журнала действий, указанной в справочнике по данным мониторинга Azure Stream Analytics.
Тип оповещения | Условие | Description |
---|---|---|
Метрики платформы | Использование памяти единиц потоковой передачи (SU) | Каждый раз, когда среднее значение SU (память) % использования превышает 80 % |
Журнал действий | Неудачные операции | Всякий раз, когда журнал действий имеет событие с category='Administrative', Signal name='All Administrative operations', Status='Failed' |
Подробные инструкции по настройке оповещения для Azure Stream Analytics см. в статье "Настройка оповещений для заданий Azure Stream Analytics".
Рекомендации Помощника
Для некоторых служб, если критические условия или неизбежные изменения происходят во время операций ресурсов, на странице обзора службы на портале отображается оповещение. Дополнительные сведения и рекомендуемые исправления для оповещения в рекомендациях Помощника см. в разделе "Мониторинг" в меню слева. Во время обычных операций рекомендации помощника не отображаются.
Дополнительные сведения о Помощнике по Azure см. в обзоре Помощника по Azure.
Связанный контент
- Общие сведения о мониторинге ресурсов Azure см. в статье "Мониторинг ресурсов Azure" с помощью Azure Monitor .
- Дополнительные сведения о метриках, журналах и других важных значениях, созданных для Azure Stream Analytics, см . в справочнике по данным мониторинга Azure Stream Analytics.
- Ознакомьтесь со следующими статьями по мониторингу и устранению неполадок Azure Stream Analytics: