Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Вспомогательный план таблицы позволяет прием и хранение данных в рабочей области Log Analytics с низкой стоимостью.
Вот видео, объясняющее некоторые из использования и преимуществ вспомогательного плана таблицы:
Журналы Azure Monitor в настоящее время поддерживают вспомогательный план таблицы для правил сбора данных на основе пользовательских таблиц на основе DCR, в которые отправляются данные, собираемые с помощью агента Azure Monitor или API приема журналов.
В этой статье объясняется, как создать пользовательскую таблицу с вспомогательным планом в рабочей области Log Analytics и настроить правило сбора данных, которое отправляет данные в эту таблицу. Дополнительные сведения о концепциях вспомогательных планов см. в планах таблиц журналов Azure Monitor.
Предварительные условия
Чтобы создать настраиваемую таблицу и собрать данные журнала, вам потребуется:
- Рабочая область Log Analytics, в которой у вас есть по крайней мере права участника.
- Конечная точка сбора данных (DCE).
- Настройка таблицы с вспомогательным планом поддерживается только в новых таблицах. После создания таблицы с вспомогательным планом невозможно изменить план таблицы.
Замечание
Вспомогательные журналы доступны для всех публичных облачных регионов, кроме центрального региона Катара, и недоступны для облаков Azure для правительственных учреждений или облаков Китая.
Создание настраиваемой таблицы с вспомогательным планом
Чтобы создать пользовательскую таблицу, вызовите Tables — Create API с помощью этой команды:
PUT https://management.azure.com/subscriptions/{subscription_id}/resourceGroups/{resource_group}/providers/Microsoft.OperationalInsights/workspaces/{workspace_name}/tables/{table name_CL}?api-version={api-version}
Предоставьте эти данные в теле вашего запроса. Обновите имя таблицы и измените столбцы на основе схемы таблицы. В этом примере перечислены все поддерживаемые типы данных столбцов.
{
"properties": {
"schema": {
"name": "table_name_CL",
"columns": [
{"name": "TimeGenerated",
"type": "datetime"},
{"name": "StringProperty",
"type": "string"},
{"name": "IntProperty",
"type": "int"},
{"name": "LongProperty",
"type": "long"},
{"name": "RealProperty",
"type": "real"},
{"name": "BooleanProperty",
"type": "boolean"},
{"name": "GuidProperty",
"type": "guid"},
{"name": "DateTimeProperty",
"type": "datetime"}
]
},
"totalRetentionInDays": 365,
"plan": "Auxiliary"
}
}
Замечание
- Столбец
TimeGeneratedподдерживает только формат ISO 8601 с 6 десятичными разрядами для точности (nanoseconds). Дополнительные сведения см. в поддерживаемом формате даты и времени ISO 8601. - Таблицы с вспомогательным планом не поддерживают столбцы с динамическими данными.
Отправка данных в таблицу с вспомогательным планом
В настоящее время существует два способа приема данных в настраиваемую таблицу с вспомогательным планом.
- Использование агента Azure Monitor (AMA)
- Используйте API приема журналов
Используйте AMA
При использовании этого метода пользовательская таблица должна иметь только два столбца — TimeGenerated (тип datetime) и RawData (тип string). Правило сбора данных отправляет всю запись каждого журнала, которую вы собираете, в столбец RawData, а Azure Monitor Logs автоматически заполняет столбец TimeGenerated моментом поступления журнала.
Дополнительные сведения об использовании AMA см. в следующих статьях:
- Сбор журналов из текстового файла с помощью агента Azure Monitor
- Сбор журналов из JSON-файла с помощью агента Azure Monitor.
Используйте API приема журналов
Этот метод строго следует шагам, описанным в Руководство: Отправка данных в Azure Monitor с помощью API приема журналов.
- Создайте настраиваемую таблицу с дополнительным планом, как описано в этой статье.
- Создайте приложение Microsoft Entra.
-
Создайте правило сбора данных. Ниже приведен пример шаблона ARM для
kind:Direct. Этот тип DCR не требует DCE, так как он включает конечную точкуlogsIngestion.myworkspace— имя рабочей области Log Analytics.tablename_CL— имя таблицы.columnsвключает те же столбцы, которые вы задаете при создании таблицы.{ "$schema": "https://schema.management.azure.com/schemas/2019-08-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "dataCollectionRuleName": { "type": "string", "metadata": {"description": "Specifies the name of the data collection rule to create."} }, "location": { "type": "string", "metadata": {"description": "Specifies the region in which to create the data collection rule. The must be the same region as the destination Log Analytics workspace."} }, "workspaceResourceId": { "type": "string", "metadata": {"description": "The Azure resource ID of the Log Analytics workspace in which you created a custom table with the Auxiliary plan."} } }, "resources": [ { "type": "Microsoft.Insights/dataCollectionRules", "name": "[parameters('dataCollectionRuleName')]", "location": "[parameters('location')]", "apiVersion": "2023-03-11", "kind": "Direct", "properties": { "streamDeclarations": { "Custom-tablename_CL": { "columns": [ {"name": "TimeGenerated", "type": "datetime"}, {"name": "StringProperty", "type": "string"}, {"name": "IntProperty", "type": "int"}, {"name": "LongProperty", "type": "long"}, {"name": "RealProperty", "type": "real"}, {"name": "BooleanProperty", "type": "boolean"}, {"name": "GuidProperty", "type": "guid"}, {"name": "DateTimeProperty", "type": "datetime"}] } }, "destinations": { "logAnalytics": [ {"workspaceResourceId": "[parameters('workspaceResourceId')]", "name": "myworkspace"}] }, "dataFlows": [ { "streams": ["Custom-table_name"], "transformKql": "source", "destinations": ["myworkspace"], "outputStream": "Custom-tablename-CL" }] } }], "outputs": { "dataCollectionRuleId": { "type": "string", "value": "[resourceId('Microsoft.Insights/dataCollectionRules', parameters('dataCollectionRuleName'))]" } } }
- Предоставьте приложению разрешение на использование DCR.
- Отправка данных с помощью примера кода.
Предупреждение
При приеме журналов на вспомогательный уровень Azure Monitor избегайте отправки одного пакета данных, содержащего метки времени TimeGenerated, в течение более чем 30 минут в одном запросе API. Этот вызов API может привести к ошибке загрузки с кодом RecordsTimeRangeIsMoreThan30Minutes. Это известное ограничение , которое удаляется.
Это ограничение не применяется к вспомогательным журналам, используюющим преобразования.