Мониторинг работоспособности соединителей данных

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

Следующие функции позволяют выполнять этот мониторинг из Microsoft Sentinel:

  • Рабочая книга для мониторинга работоспособности сбора данных: Эта рабочая книга содержит дополнительные средства мониторинга, обнаруживает аномалии и позволяет получить представление о статусе приема данных рабочей области. Логику этой книги можно использовать для мониторинга общего состояния загруженных данных, а также для создания пользовательских представлений и оповещений на основе правил.

  • SentinelHealth таблица данных: Запрос к этой таблице предоставляет сведения об изменениях состояния работоспособности, таких как последние события сбоев для каждого соединения или соединения, у которых состояние изменилось с успешного на состояние сбоя; эти сведения можно использовать для создания оповещений и других автоматизированных действий. Таблица данных SentinelHealth в настоящее время поддерживается только для выбранных соединителей данных, таких как Amazon Web Services, Dynamics 365, Office 365 и других, перечисленных в разделе «Поддерживаемые соединители данных» позже в этой статье.

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

В этой статье объясняется, как использовать книгу мониторинга состояния сбора данных и таблицу данных SentinelHealth для мониторинга состояния коннектора данных, выполнения диагностических запросов и настройки автоматических оповещений при отклонениях состояния.

Используйте книгу мониторинга работоспособности

Для начала установите книгу мониторинга работоспособности процесса сбора данных из Центра содержимого и откройте шаблон для просмотра или создайте его копию в разделе Книги Microsoft Sentinel.

  1. Для Microsoft Sentinel в портал Azure в разделе Управление содержимым выберите Центр содержимого.
    Для Microsoft Sentinel на портале Defender выберите Microsoft Sentinel>Управление содержимым>Центр содержимого.

  2. В центре содержимого введите работоспособности в строке поиска и выберите Мониторинг работоспособности коллекции данных из результатов.

  3. Выберите Установить в области сведений. Когда появится уведомление о том, что книга установлена, или если вместо установки вы увидите раздел Конфигурация, перейдите к следующему шагу.

  4. В Microsoft Sentinel в разделе Управление угрозами выберите Рабочие книги.

  5. На странице Рабочие книги выберите вкладку Шаблоны, введите health в строке поиска и выберите Мониторинг работоспособности сбора данных среди результатов.

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

  7. Открыв книгу, сначала выберите подписку и рабочую область, которые нужно просмотреть, затем задайте TimeRange, чтобы отфильтровать данные в соответствии с вашими задачами. Используйте переключатель Показать справку, чтобы отобразить встроенные пояснения в книге.

    начальная страница книги мониторинга работоспособности соединителя данных

В этой книге есть три раздела с вкладками:

  • На вкладке Обзор отображается общее состояние загрузки данных в выбранной рабочей области: показатели объема, показатели EPS и время получения последнего журнала.

  • Вкладка Аномалии сбора данных поможет обнаружить аномалии в процессе сбора данных по таблице и источнику данных. На каждой вкладке представлены аномалии для определенной таблицы (вкладка Общие содержит коллекцию таблиц). Аномалии вычисляются с помощью функции series_decompose_anomalies(), которая возвращает оценку аномалий. Дополнительные сведения о функции series_decompose_anomalies(). Задайте следующие параметры для оценки функции:

    • AnomaliesTimeRange: средство выбора времени применяется только к представлению аномалий сбора данных.

    • SampleInterval: интервал времени, в течение которого данные отбираются в заданном диапазоне времени. Оценка аномалий вычисляется только на основе данных последнего интервала.

    • PositiveAlertThreshold: это значение определяет пороговое значение положительной оценки аномалий. Он принимает десятичные значения.

    • NegativeAlertThreshold: это значение определяет пороговое значение отрицательной оценки аномалий. Он принимает десятичные значения.

      страница аномалий рабочей книги мониторинга работоспособности соединителя данных

  • На вкладке Сведения об агенте отображаются сведения о работоспособности агентов, установленных на различных компьютерах, будь то Azure виртуальная машина, другая облачная виртуальная машина, локальная или физическая. Отслеживайте расположение системы, состояние пульса и задержку, доступную память и дисковое пространство, а также операции агента.

    В этом разделе необходимо выбрать вкладку с описанием среды компьютеров: выберите вкладку компьютеров, управляемых Azure, если вы хотите просмотреть только компьютеры, управляемые Azure Arc; выберите вкладку Все компьютеры, чтобы просмотреть управляемые и не Azure компьютеры с установленным агентом мониторинга Azure.

    страница сведений об агенте книги для мониторинга работоспособности соединителя данных

Использование таблицы данных SentinelHealth

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

После включения функции контроля работоспособности таблица данных SentinelHealth создается при регистрации первого события успешного выполнения или сбоя, сгенерированного для ваших соединителей данных.

Поддерживаемые соединители данных

Таблица данных SentinelHealth в настоящее время поддерживается только для следующих соединителей данных:

Описание событий таблицы SentinelHealth

Таблица SentinelHealth — это таблица журналов Microsoft Sentinel, которая хранит события здоровья поддерживаемых коннекторов данных. В этой таблице зарегистрированы следующие типы событий здоровья:

  • Изменение состояния получения данных. Чтобы избежать избыточного журналирования и уменьшить размер таблицы, Microsoft Sentinel заносит это событие в журнал один раз в час, пока состояние соединителя данных остается неизменным, а события продолжают указывать либо только на успешную работу, либо только на сбой. Если состояние соединителя данных имеет непрерывные сбои, дополнительные сведения о сбоях включаются в столбец ExtendedProperties .

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

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

  • Сводка по сбоям. Регистрируется один раз в час для каждого соединителя и каждой рабочей области, со сводной информацией о сбоях. Сводные события сбоев создаются только в том случае, если соединитель столкнулся с ошибками опроса в течение заданного часа. Они содержат все дополнительные сведения, указанные в столбце ExtendedProperties , например период времени, в течение которого была запрошена исходная платформа соединителя, и отдельный список сбоев, возникших в течение этого периода времени.

Дополнительные сведения см. в разделе Схема столбцов таблицы SentinelHealth.

Запустите запросы для обнаружения отклонений в работоспособности

Создайте запросы к таблице SentinelHealth, чтобы выявлять отклонения в работоспособности соединителей данных. Например, вы можете:

Обнаружение последних событий сбоя для каждого соединителя:

SentinelHealth
| where TimeGenerated > ago(3d)
| where OperationName == 'Data fetch status change'
| where Status in ('Success', 'Failure')
| summarize TimeGenerated = arg_max(TimeGenerated,*) by SentinelResourceName, SentinelResourceId
| where Status == 'Failure'

Определять коннекторы, у которых состояние изменилось со сбоя на успешное:

let latestStatus = SentinelHealth
| where TimeGenerated > ago(12h)
| where OperationName == 'Data fetch status change'
| where Status in ('Success', 'Failure')
| project TimeGenerated, SentinelResourceName, SentinelResourceId, LastStatus = Status
| summarize TimeGenerated = arg_max(TimeGenerated,*) by SentinelResourceName, SentinelResourceId;
let nextTolatestStatus = SentinelHealth
| where TimeGenerated > ago(12h)
| where OperationName == 'Data fetch status change'
| where Status in ('Success', 'Failure')
| join kind = leftanti (latestStatus) on SentinelResourceName, SentinelResourceId, TimeGenerated
| project TimeGenerated, SentinelResourceName, SentinelResourceId, NextToLastStatus = Status
| summarize TimeGenerated = arg_max(TimeGenerated,*) by SentinelResourceName, SentinelResourceId;
latestStatus
| join kind=inner (nextTolatestStatus) on SentinelResourceName, SentinelResourceId
| where NextToLastStatus == 'Failure' and LastStatus == 'Success'

Определять соединители с изменением из состояния успешного выполнения в состояние сбоя:

let latestStatus = SentinelHealth
| where TimeGenerated > ago(12h)
| where OperationName == 'Data fetch status change'
| where Status in ('Success', 'Failure')
| project TimeGenerated, SentinelResourceName, SentinelResourceId, LastStatus = Status
| summarize TimeGenerated = arg_max(TimeGenerated,*) by SentinelResourceName, SentinelResourceId;
let nextTolatestStatus = SentinelHealth
| where TimeGenerated > ago(12h)
| where OperationName == 'Data fetch status change'
| where Status in ('Success', 'Failure')
| join kind = leftanti (latestStatus) on SentinelResourceName, SentinelResourceId, TimeGenerated
| project TimeGenerated, SentinelResourceName, SentinelResourceId, NextToLastStatus = Status
| summarize TimeGenerated = arg_max(TimeGenerated,*) by SentinelResourceName, SentinelResourceId;
latestStatus
| join kind=inner (nextTolatestStatus) on SentinelResourceName, SentinelResourceId
| where NextToLastStatus == 'Success' and LastStatus == 'Failure'

Дополнительные сведения о следующих операторах и функциях Kusto, используемых в запросах sentinelHealth health-drift, см. в документации Kusto:

Дополнительные сведения о KQL см. в статье Общие сведения о язык запросов Kusto (KQL).

Другие ресурсы

Настройте оповещения и автоматические действия при неполадках

Хотя вы можете использовать правила аналитики Microsoft Sentinel для настройки автоматизации в журналах Microsoft Sentinel, если вы хотите получать уведомления и немедленно принимать меры при отклонениях в работоспособности ваших соединителей данных, мы рекомендуем использовать правила генерации предупреждений Azure Monitor.

Ниже показано, как создать правило генерации оповещений Azure Monitor, использующее запрос SentinelHealth для обнаружения смещения работоспособности соединителя данных:

  1. В правиле оповещения Azure Monitor выберите рабочую область Microsoft Sentinel в качестве области действия правила, а Пользовательский поиск по журналам — в качестве первого условия.

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

  3. Для действий правила выберите существующую группу действий или при необходимости создайте новую, чтобы настроить push-уведомления и другие автоматизированные действия, например запуск Logic App, вебхука или функции Azure в вашей системе.

Дополнительные сведения см. в обзоре оповещений Azure Monitor и журнале оповещений Azure Monitor.

Дальнейшие действия