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


Сведения о том, как служба подготовки интегрируется с журналами Azure Monitor

служба подготовки интегрируется с журналами Azure Monitor и Log Analytics. С помощью мониторинга Azure можно выполнять такие действия, как создание книг, также известных как панели мониторинга, хранение журналов подготовки в течение 30 дней и создание настраиваемых запросов и оповещений. В этой статье описывается интеграция журналов подготовки с журналами Azure Monitor. Чтобы узнать больше о том, как функционируют журналы подготовки, ознакомьтесь с разделом о журналах подготовки.

Включение интеграции журналов подготовки

Если вы еще не знакомы с Azure Monitor и Log Analytics, изучите следующие ресурсы, а затем вернитесь, чтобы узнать об интеграции журналов подготовки приложений с журналами Azure Monitor.

Чтобы интегрировать журналы подготовки с журналами Azure Monitor:

  1. Войдите в Центр администрирования Microsoft Entra как минимум администратор безопасности.

  2. Создание рабочей области Log Analytics.

  3. Перейдите к параметрам диагностики мониторинга удостоверений и работоспособности>

    Снимок экрана: доступ к параметрам диагностики.

  4. Выберите журналы, которые вы хотите передавать, выберите параметр "Отправить в рабочую область Log Analytics" и заполните поля.

    Снимок экрана: включение журналов подготовки приложений.

  5. Перейдите к >>Log Analytics и начните запрашивать данные.

Примечание.

Это может занять некоторое время, прежде чем журналы отображаются в Log Analytics после первого включения интеграции. Если появилось сообщение об ошибке, в котором указано, что подписка не зарегистрирована для использования microsoft.insights, повторите попытку через несколько минут.

Основные сведения о данных

Базовый поток данных, который служба подготовки отправляет в средства просмотра журналов, практически идентичен. Журналы Azure Monitor получают почти тот же поток, что и Центр администрирования Microsoft Entra и API Microsoft Graph. В полях журнала есть несколько различий, как описано в следующей таблице. Log Analytics может отображать больше событий, чем журналы в Центре администрирования Microsoft Entra. Чтобы узнать больше об этих полях, ознакомьтесь с разделом Список provisioningObjectSummary.

Журналы Azure Monitor Пользовательский интерфейс портала Azure API Azure
errorDescription reason resultDescription
статус resultType resultType
activityDateTime TimeGenerated TimeGenerated

Книги Microsoft Entra

Книги удостоверений Microsoft Entra предоставляют гибкий холст для анализа данных. Он также позволяют создавать полнофункциональные визуальные отчеты на портале Azure. Дополнительные сведения см . в книгах Microsoft Entra.

Аналитика подготовки и подготовки — это две предварительно созданные книги. Чтобы просмотреть данные, убедитесь, что заполняются все фильтры (timeRange, jobID, appName). Кроме того, убедитесь, что приложение подготовлено, в противном случае в журналах нет данных.

Книги подготовки приложений

Панель мониторинга подготовки приложений

Пользовательские запросы

Вы можете создавать настраиваемые запросы и отображать данные в книгах. Дополнительные сведения см. в статье "Начало работы с запросами журналов" в Azure Monitor и запросах журналов в Azure Monitor.

Ниже приведены некоторые примеры для начала работы с запросами журнала подготовки приложений.

Запрос журналов пользователя по его идентификатору в исходной системе:

AADProvisioningLogs
| extend SourceIdentity = parse_json(SourceIdentity)
| where tostring(SourceIdentity.Id) == "49a4974bb-5011-415d-b9b8-78caa7024f9a"

Суммирование количества значений по коду ошибки:

AADProvisioningLogs
| summarize count() by ErrorCode = ResultSignature

Суммирование количества событий в день по действию:

AADProvisioningLogs
| where TimeGenerated > ago(7d)
| summarize count() by Action, bin(TimeGenerated, 1d)

Выбор 100 событий и ключевых свойств проекта:

AADProvisioningLogs
| extend SourceIdentity = parse_json(SourceIdentity)
| extend TargetIdentity = parse_json(TargetIdentity)
| extend ServicePrincipal = parse_json(ServicePrincipal)
| where tostring(SourceIdentity.identityType) == "Group"
| project tostring(ServicePrincipal.Id), tostring(ServicePrincipal.Name), ModifiedProperties, JobId, Id, CycleId, ChangeId, Action, SourceIdentity.identityType, SourceIdentity.details, TargetIdentity.identityType, TargetIdentity.details, ProvisioningSteps
| take 100

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

AADProvisioningLogs
| where TimeGenerated >= ago(10d)
| where JobId == "Azure2Azure.73f0883f-d67d-4af1-ac8a-45367f8982e0.5ef3be57-f45f-451g-88c4-68a7fda680bb" // Customize by adding a specific app JobId
| extend SourceIdentity = parse_json(SourceIdentity)
| extend ProvisioningSteps = parse_json(ProvisioningSteps)
| where tostring(SourceIdentity.identityType) == "Group"
| where ProvisioningSteps matches regex "UnableToResolveReferenceAttributeValue"
| parse tostring(ProvisioningSteps.[2].description) with "We were unable to assign " userObjectId " as the members of " groupDisplayName "." *
| project groupDisplayName, userObjectId,  JobId
| take 100

Суммирование действий по приложению.

AADProvisioningLogs
| where TimeGenerated > ago(30d)
| where JobId == "Azure2Azure.73f0883f-d67d-4af1-ac8a-45367f8982e0.5ef3be57-f45f-451g-88c4-68a7fda680bb" // Customize by adding a specific app JobId
| extend ProvisioningSteps = parse_json(ProvisioningSteps)
| extend eventName = tostring(ProvisioningSteps.[-1].name)
| summarize count() by eventName, JobId
| order by JobId asc
| take 5

Определение пиков в определенных операциях.

AADProvisioningLogs
| where TimeGenerated > ago(30d)
| where JobId == "scim.73f0883f-d67d-4af1-ac8a-45367f8982e0.5ef3be57-f45f-451g-88c4-68a7fda680bb" // Customize by adding a specific app JobId
| extend ProvisioningSteps = parse_json(ProvisioningSteps)
| extend eventName = tostring(ProvisioningSteps.[-1].name)
| summarize count() by eventName, bin(TimeGenerated, 1d)
| render timechart

Настраиваемые оповещения

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

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

  1. В Log Analytics выберите + Новое правило генерации оповещений.
  2. На вкладке условия выберите ссылку Просмотр результата и редактирование запроса в журналах.
  3. Введите запрос, в который нужно включить оповещение, и заполните необходимые поля для создания оповещения.

Чтобы создать оповещение при возникновении всплеска сбоев:

AADProvisioningLogs
| where JobId == "string" // Customize by adding a specific app JobId
| where ResultType == "Failure"

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

AADProvisioningLogs
| take 1

Чтобы создать уведомление в случае всплеска отключений или удалений:

AADProvisioningLogs
| where Action in ("Disable", "Delete")

Вклад сообщества

К запросам и панелям мониторинга подготовки приложений мы используем подход на основе открытого кода и сообщества. Создайте запрос, оповещение или книгу, которые вы считаете полезными для других пользователей, а затем опубликуйте его в репозитории GitHub AzureMonitorCommunity. Стреляйте по электронной почте со ссылкой. Мы просматриваем и публикуем запросы и панели мониторинга в службе, чтобы другие также могли воспользоваться преимуществами. Свяжитесь с нами по адресу provisioningfeedback@microsoft.com.

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