Руководство. Прием событий из Центры событий Azure в журналы Azure Monitor (общедоступная предварительная версия)
Центры событий Azure — это платформа потоковой передачи больших данных, которая собирает события из нескольких источников для приема в Azure и внешних службах. В этой статье объясняется, как получать данные непосредственно из концентратора событий в рабочую область Log Analytics.
В этом руководстве описано следующее:
- Создание целевой таблицы для данных концентратора событий в рабочей области Log Analytics
- Создание конечной точки сбора данных
- Создание правила сбора данных
- Предоставление разрешений правил сбора данных концентратору событий
- Связывание правила сбора данных с концентратором событий
Необходимые компоненты
Чтобы отправлять события из Центры событий Azure в журналы Azure Monitor, вам потребуются эти ресурсы в одном регионе:
- Рабочая область Log Analytics, где у вас есть по крайней мере права участника.
- Рабочая область Log Analytics должна быть связана с выделенным кластером или иметь уровень обязательств.
- Пространство имен Центров событий, которое разрешает доступ к общедоступной сети. Приватный канал и периметры безопасности сети (NSP) в настоящее время не поддерживаются.
- Концентратор событий с событиями. Вы можете отправлять события в концентратор событий, выполнив действия, описанные в разделе "Отправка и получение событий" в руководствах Центры событий Azure или путем настройки параметров диагностики ресурсов Azure.
Поддерживаемые регионы
Azure Monitor в настоящее время поддерживает прием из Центров событий в следующих регионах:
Северная и Южная Америка | Европа | Ближний Восток | Африка | Азиатско-Тихоокеанский регион |
---|---|---|---|---|
Brazil South | Центральная Франция | Северная часть ОАЭ; | Северная часть ЮАР | Центральная Австралия |
Юго-Восточная Бразилия | Северная Европа | Восточная Австралия | ||
Центральная Канада | Восточная Норвегия; | Юго-Восточная часть Австралии | ||
Восточная Канада | Северная Швейцария | Центральная Индия | ||
Восточная часть США | Западная Швейцария | Восточная Азия | ||
восточная часть США 2 | южная часть Соединенного Королевства | Восточная Япония | ||
Центрально-южная часть США | западная часть Соединенного Королевства | Западная Индия Jio | ||
западная часть США | Западная Европа | Республика Корея, центральный регион | ||
Западная часть США — 3 | Юго-Восточная Азия |
Сбор необходимых сведений
Вам потребуется идентификатор подписки, имя группы ресурсов, имя рабочей области, идентификатор ресурса рабочей области и идентификатор ресурса концентратора событий в последующих шагах:
Перейдите в рабочую область в меню "Рабочие области Log Analytics" и выберите "Свойства " и скопируйте идентификатор подписки, группу ресурсов и имя рабочей области. Эти сведения потребуются для создания ресурсов в этом руководстве.
Выберите JSON, чтобы открыть экран JSON ресурса и скопировать идентификатор ресурса рабочей области. Для создания правила сбора данных потребуется идентификатор ресурса рабочей области.
Перейдите к экземпляру концентратора событий, выберите JSON, чтобы открыть экран JSON ресурса ресурса и скопировать идентификатор ресурса концентратора событий. Вам потребуется идентификатор ресурса экземпляра концентратора событий для связывания правила сбора данных с концентратором событий.
Создание целевой таблицы в рабочей области Log Analytics
Перед приемом данных необходимо настроить целевую таблицу. Вы можете получать данные в пользовательские таблицы и поддерживаемые таблицы Azure.
Чтобы создать пользовательскую таблицу для приема событий, в портал Azure:
Нажмите кнопку Cloud Shell и убедитесь, что среда имеет значение PowerShell.
Выполните следующую команду PowerShell, чтобы создать таблицу, указав имя таблицы () в ФОРМАТЕ JSON (
<table_name>
что тоже с суффиксом _CL в случае настраиваемой таблицы), а также задайте<subscription_id>
значение ,<resource_group_name>
<workspace_name>
и<table_name>
значения в командеInvoke-AzRestMethod -Path
:$tableParams = @' { "properties": { "schema": { "name": "<table_name>", "columns": [ { "name": "TimeGenerated", "type": "datetime", "description": "The time at which the data was ingested." }, { "name": "RawData", "type": "string", "description": "Body of the event." }, { "name": "Properties", "type": "dynamic", "description": "Additional message properties." } ] } } } '@ Invoke-AzRestMethod -Path "/subscriptions/<subscription_id>/resourcegroups/<resource_group_name>/providers/microsoft.operationalinsights/workspaces/<workspace_name>/tables/<table_name>?api-version=2021-12-01-preview" -Method PUT -payload $tableParams
Внимание
- Имена столбцов должны начинаться с буквы и могут содержать до 45 буквенно-цифровых символов и символов подчеркивания (
_
). _ResourceId
,id
,_ResourceId
Type
UniqueId
_SubscriptionId
TenantId
иTitle
являются зарезервированными именами столбцов.- Имена столбцов чувствительны к регистру. Обязательно используйте правильный случай в правиле сбора данных.
Создание конечной точки сбора данных
Чтобы собирать данные с помощью правила сбора данных, требуется конечная точка сбора данных:
Создайте конечную точку сбора данных.
Внимание
Создайте конечную точку сбора данных в том же регионе, что и рабочая область Log Analytics.
На экране обзора конечной точки сбора данных выберите представление JSON.
Скопируйте идентификатор ресурса для правила сбора данных. Эти сведения будут использоваться на следующем шаге.
Создание правила сбора данных
Azure Monitor использует правила сбора данных для определения собираемых данных, преобразования данных и места отправки данных.
Чтобы создать правило сбора данных в портал Azure, выполните следующие действия.
В поле поиска портала введите шаблон и выберите " Развернуть пользовательский шаблон".
Выберите Создать собственный шаблон в редакторе.
Вставьте приведенный ниже шаблон Resource Manager в редактор и нажмите кнопку "Сохранить".
Обратите внимание на следующие сведения в правиле сбора данных ниже:
identity
— определяет тип используемого управляемого удостоверения . В нашем примере мы используем назначаемое системой удостоверение. Вы также можете настроить управляемое удостоверение, назначаемое пользователем.dataCollectionEndpointId
— идентификатор ресурса конечной точки сбора данных.streamDeclarations
— определяет, какие данные следует принять из концентратора событий (входящие данные). Невозможно изменить объявление потока.TimeGenerated
— Время приема данных из концентратора событий в журналы Azure Monitor.RawData
— Текст события. Дополнительные сведения см. в разделе "Чтение событий".Properties
— Свойства пользователя из события. Дополнительные сведения см. в разделе "Чтение событий".
datasources
— указывает группу потребителей концентратора событий и поток, в который вы отправляете данные.destinations
— указывает все назначения, в которых будут отправляться данные. Вы можете получать данные в одну или несколько рабочих областей Log Analytics.dataFlows
— соответствует потоку с целевой рабочей областью и указывает запрос преобразования и целевую таблицу. В нашем примере мы вводим данные в созданную ранее пользовательскую таблицу. Вы также можете использовать поддерживаемую таблицу Azure.transformKql
— указывает преобразование, которое будет применяться к входящим данным (объявлению потока) перед отправкой в рабочую область. В нашем примере мы устанавливаем значениеtransformKql
source
, которое не изменяет данные из источника каким-либо образом, так как мы сопоставляем входящие данные с пользовательской таблицей, которую мы создали специально с соответствующей схемой. Если вы выполняете прием данных в таблицу с другой схемой или фильтруете данные перед приемом, определите преобразование сбора данных.
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "dataCollectionRuleName": { "type": "string", "metadata": { "description": "Specifies the name of the data collection Rule to create." } }, "workspaceResourceId": { "type": "string", "metadata": { "description": "Specifies the Azure resource ID of the Log Analytics workspace to use." } }, "endpointResourceId": { "type": "string", "metadata": { "description": "Specifies the Azure resource ID of the data collection endpoint to use." } }, "tableName": { "type": "string", "metadata": { "description": "Specifies the name of the table in the workspace." } }, "consumerGroup": { "type": "string", "metadata": { "description": "Specifies the consumer group of event hub." }, "defaultValue": "$Default" } }, "resources": [ { "type": "Microsoft.Insights/dataCollectionRules", "name": "[parameters('dataCollectionRuleName')]", "location": "[resourceGroup().location]", "apiVersion": "2022-06-01", "identity": { "type": "systemAssigned" }, "properties": { "dataCollectionEndpointId": "[parameters('endpointResourceId')]", "streamDeclarations": { "Custom-MyEventHubStream": { "columns": [ { "name": "TimeGenerated", "type": "datetime" }, { "name": "RawData", "type": "string" }, { "name": "Properties", "type": "dynamic" } ] } }, "dataSources": { "dataImports": { "eventHub": { "consumerGroup": "[parameters('consumerGroup')]", "stream": "Custom-MyEventHubStream", "name": "myEventHubDataSource1" } } }, "destinations": { "logAnalytics": [ { "workspaceResourceId": "[parameters('workspaceResourceId')]", "name": "MyDestination" } ] }, "dataFlows": [ { "streams": [ "Custom-MyEventHubStream" ], "destinations": [ "MyDestination" ], "transformKql": "source", "outputStream": "[concat('Custom-', parameters('tableName'))]" } ] } } ] }
На экране пользовательского развертывания укажите группу подписок и ресурсов для хранения правила сбора данных, а затем укажите значения параметров, определенных в шаблоне, включая:
- Регион — регион для правила сбора данных. Заполняется автоматически на основе выбранной группы ресурсов.
- Имя правила сбора данных — присвойте правилу имя.
- Идентификатор ресурса рабочей области— см . сведения о сборе необходимых сведений.
- Идентификатор ресурса конечной точки— создается при создании конечной точки сбора данных.
- Имя таблицы — имя целевой таблицы. В нашем примере и всякий раз, когда вы используете пользовательскую таблицу, имя таблицы должно заканчиваться суффиксом _CL. Если вы вводите данные в таблицу Azure, введите имя таблицы ( например,
Syslog
без суффикса). - Группа потребителей — по умолчанию для группы потребителей задано
$Default
значение . При необходимости измените значение на другую группу потребителей концентратора событий.
Нажмите кнопку "Просмотр и создание ", а затем при просмотре сведений.
По завершении развертывания разверните поле сведений о развертывании и выберите правило сбора данных для просмотра сведений. Выберите представление JSON.
Скопируйте идентификатор ресурса для правила сбора данных. Эти сведения будут использоваться на следующем шаге.
Настройка управляемого удостоверения, назначаемого пользователем (необязательно)
Чтобы настроить правило сбора данных для поддержки назначаемого пользователем удостоверения, в приведенном выше примере замените:
"identity": {
"type": "systemAssigned"
},
на:
"identity": {
"type": "userAssigned",
"userAssignedIdentities": {
"<identity_resource_Id>": {
}
}
},
Чтобы найти <identity_resource_Id>
это значение, перейдите к ресурсу управляемого удостоверения, назначаемого пользователем, в портал Azure выберите JSON, чтобы открыть экран RESOURCE JSON и скопировать идентификатор ресурса управляемого удостоверения.
Прием данных журнала в таблицу Azure (необязательно)
Чтобы получить данные в поддерживаемую таблицу Azure, выполните следующее:
В правиле сбора данных измените
outputStream
:От:
"outputStream": "[concat('Custom-', parameters('tableName'))]"
Кому:
"outputStream": "outputStream": "[concat(Microsoft-', parameters('tableName'))]"
В
transformKql
этой статье определяется преобразование , которое отправляет приема данных в целевые столбцы в целевой таблице Azure.
Предоставление разрешения концентратора событий правилу сбора данных
С помощью управляемого удостоверения можно предоставить любой концентратор событий или пространство имен Центров событий, разрешение на отправку событий в созданное правило сбора данных и конечную точку сбора данных. При предоставлении разрешений пространству имен Центров событий все центры событий в пространстве имен наследуют разрешения.
В концентраторе событий или пространстве имен Центров событий в портал Azure выберите контроль доступа (IAM)>Добавить назначение ролей.
Выберите Центры событий Azure приемник данных и нажмите кнопку "Далее".
Выберите управляемое удостоверение для назначения доступа и нажмите кнопку "Выбрать участников". Выберите правило сбора данных, найдите правило сбора данных по имени и нажмите кнопку "Выбрать".
Выберите "Проверить и назначить " и проверьте сведения перед сохранением назначения роли.
Связывание правила сбора данных с концентратором событий
Последним шагом является связывание правила сбора данных с концентратором событий, из которого требуется собирать события.
Вы можете связать одно правило сбора данных с несколькими концентраторами событий, которые совместно используют одну и ту же группу потребителей и получать данные в один поток. Кроме того, можно связать уникальное правило сбора данных с каждым концентратором событий.
Внимание
Необходимо связать по крайней мере одно правило сбора данных с концентратором событий с приемом данных из концентратора событий. При удалении всех связей правил сбора данных, связанных с концентратором событий, вы перестанете прием данных из концентратора событий.
Чтобы создать связь правила сбора данных в портал Azure, выполните следующие действия.
На портале Azure в поле поиска введите шаблон, а затем выберите Развернуть настраиваемый шаблон.
Выберите Создать собственный шаблон в редакторе.
Вставьте приведенный ниже шаблон Resource Manager в редактор и нажмите кнопку "Сохранить".
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "eventHubResourceID": { "type": "string", "metadata": { "description": "Specifies the Azure resource ID of the event hub to use." } }, "associationName": { "type": "string", "metadata": { "description": "The name of the association." } }, "dataCollectionRuleID": { "type": "string", "metadata": { "description": "The resource ID of the data collection rule." } } }, "resources": [ { "type": "Microsoft.Insights/dataCollectionRuleAssociations", "apiVersion": "2021-09-01-preview", "scope": "[parameters('eventHubResourceId')]", "name": "[parameters('associationName')]", "properties": { "description": "Association of data collection rule. Deleting this association will break the data collection for this event hub.", "dataCollectionRuleId": "[parameters('dataCollectionRuleId')]" } } ] }
На экране пользовательского развертывания укажите группу подписок и ресурсов для хранения сопоставления правил сбора данных, а затем укажите значения параметров, определенных в шаблоне, включая:
- Регион — заполняется автоматически на основе выбранной группы ресурсов.
- Идентификатор ресурса экземпляра концентратора событий— см. сведения о сборе необходимых сведений.
- Имя ассоциации — присвойте ассоциации имя.
- Идентификатор правила сбора данных— создается при создании правила сбора данных.
Нажмите кнопку "Просмотр и создание ", а затем при просмотре сведений.
Проверьте целевую таблицу для приема событий
Теперь, когда вы связали правило сбора данных с концентратором событий, журналы Azure Monitor будут приема всех существующих событий, срок хранения которых не истек и все новые события.
Чтобы проверить целевую таблицу для приема событий:
Перейдите в рабочую область и выберите "Журналы".
Напишите простой запрос в редакторе запросов и нажмите кнопку "Выполнить".
<table_name>
События должны отображаться из концентратора событий.
Очистка ресурсов
В этом руководстве вы создали следующие ресурсы:
- Пользовательская таблица
- Конечная точка сбора данных
- Правило сбора данных
- Сопоставление правил сбора данных
Оцените, требуются ли эти ресурсы. Удалите ресурсы, которые вам не нужны отдельно, или удалите все эти ресурсы одновременно, удалив группу ресурсов. Работающие ресурсы могут приводить к дополнительным затратам.
Чтобы прекратить прием данных из концентратора событий, удалите все связи правил сбора данных, связанные с концентратором событий, или удалите сами правила сбора данных. Эти действия также сбрасывают контрольные точки концентратора событий.
Известные проблемы и ограничения
- Если вы передаете подписку между каталогами Microsoft Entra, необходимо выполнить действия, описанные в разделе "Известные проблемы с управляемыми удостоверениями для ресурсов Azure" для продолжения приема данных.
- Вы можете получать сообщения до 64 КБ из Центров событий в журналы Azure Monitor.
Следующие шаги
Дополнительные сведения см. в следующем: