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


Настройка таблицы с вспомогательным планом в рабочей области Log Analytics

Вспомогательный план таблицы позволяет прием и хранение данных в рабочей области Log Analytics с низкой стоимостью.

Вот видео, объясняющее некоторые из использования и преимуществ вспомогательного плана таблицы:

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

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

Предварительные условия

Чтобы создать настраиваемую таблицу и собрать данные журнала, вам потребуется:

  • Рабочая область 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=2023-01-01-preview

Замечание

Только версия 2023-01-01-preview API в настоящее время позволяет задать план вспомогательной таблицы.

Предоставьте эти данные в теле вашего запроса. Обновите имя таблицы и измените столбцы на основе схемы таблицы. В этом примере перечислены все поддерживаемые типы данных столбцов.

 {
    "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": "real"
                },
                 {
                    "name": "DateTimeProperty",
                    "type": "datetime"
                }
            ]
        },
        "totalRetentionInDays": 365,
        "plan": "Auxiliary"
    }
}

Замечание

  • Столбец TimeGenerated поддерживает только формат ISO 8601 с 6 десятичными разрядами для точности (nanoseconds). Дополнительные сведения см. в поддерживаемом формате даты и времени ISO 8601.
  • Таблицы с вспомогательным планом не поддерживают столбцы с динамическими данными.

Отправка данных в таблицу с вспомогательным планом

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

  • Сбор журналов из текстового файла с помощью агента Azure Monitor / Сбор журналов из JSON-файла с помощью агента Azure Monitor

    При использовании этого метода пользовательская таблица должна иметь только два столбца - TimeGenerated и RawData (типа string). Правило сбора данных отправляет всю запись каждого журнала, которую вы собираете, в столбец RawData, а Azure Monitor Logs автоматически заполняет столбец TimeGenerated моментом поступления журнала.

  • Отправка данных в Azure Monitor с помощью API приема журналов.

    Чтобы использовать этот метод, выполните указанные ниже действия.

    1. Создайте настраиваемую таблицу с дополнительным планом, как описано в этой статье.

    2. Следуйте шагам, описанным в руководстве: Отправка данных в Azure Monitor с использованием API приема журналов, чтобы:

      1. Создайте приложение Microsoft Entra.

      2. Создайте правило сбора данных с помощью этого шаблона ARM.

      {
          "$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-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": "real"
                                  },
                                  {
                                      "name": "DateTimeProperty",
                                      "type": "datetime"
                                  }
                                      ]
                                      }
                                  },
                      "destinations": {
                          "logAnalytics": [
                              {
                                  "workspaceResourceId": "[parameters('workspaceResourceId')]",
                                  "name": "myworkspace"
                              }
                          ]
                      },
                      "dataFlows": [
                          {
                              "streams": [
                                  "Custom-table_name_CL"
                              ],
                              "destinations": [
                                  "myworkspace"
                              ]
                          }
                      ]
                  }
              }
          ],
          "outputs": {
              "dataCollectionRuleId": {
                  "type": "string",
                  "value": "[resourceId('Microsoft.Insights/dataCollectionRules', parameters('dataCollectionRuleName'))]"
              }
          }
      }
      

      Где:

    3. Предоставьте приложению разрешение на использование DCR.

    Замечание

    Правило сбора данных, которое отправляет данные в таблицу с вспомогательным планом:

    • Может отправлять данные только в одну таблицу.
    • Не удается включить преобразование.

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

Дополнительные сведения: