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


Удаление данных из рабочей области Log Analytics с помощью API удаления данных

API удаления данных позволяет удалять такие данные, как конфиденциальные, личные, поврежденные или неправильные записи журнала.

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

Как работает API удаления данных

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

Чтобы указать, какие строки таблицы необходимо удалить, отправьте один или несколько фильтров в тексте вызова API.

Процесс удаления является окончательным и необратимым. Поэтому перед вызовом API убедитесь, что фильтры достигают ожидаемых результатов, выполнив запрос в вашем рабочем пространстве с помощью оператора KQL where.

Например, чтобы удалить данные из таблицы AzureMetrics на основании значения TimeGenerated.

  • Этот фильтр можно отправить в тексте вызова API:

    {
      "filters": [
        {
          "column": "TimeGenerated",      
          "operator": "==",                
          "value": "2024-09-23T00:00:00"  
        }
      ]
    }
    
  • Убедитесь, что фильтр возвращает запись, которую вы хотите удалить, выполнив этот запрос в рабочей области Log Analytics:

    AzureMetrics
    | where TimeGenerated == "2024-09-23T00:00:00" 
    

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

Если вы включите репликацию рабочей области Log Analytics, вызов API удаляет данные из основной и вторичной рабочих областей.

Необходимые разрешения

Действие Необходимые разрешения
Удаление данных из таблицы в рабочей области Log Analytics Microsoft.OperationalInsights/workspaces/tables/deleteData/action разрешения на рабочую область Log Analytics, как указано для встроенной роли Участника Log Analytics, например

Замечание

Операция удаления данных не влияет на плату за хранение. Плата за хранение регулируется периодом хранения, настроенным в рабочей области или таблицами.

Соображения

  • Вы можете отправлять до 10 запросов на удаление данных в час в одной рабочей области Log Analytics.
  • API удаления данных действует на данные в аналитическом плане. Чтобы удалить данные из таблицы с планом "Базовый", измените план на "Аналитика", а затем удалите данные. Вспомогательный план не поддерживается.

Вызов API удаления данных для удаления данных из определенной таблицы

Чтобы удалить строки из таблицы, используйте эту команду с одним или несколькими фильтрами в тексте. Пример фильтрации по столбцам TimeGenerated и Resource.

POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourcegroup}/providers/Microsoft.OperationalInsights/workspaces/{workspace_name}/tables/{table_name}/deleteData?api-version=2023-09-01
Authorization: Bearer eyJ0e...

{
  "filters": [
    {
      "column": "TimeGenerated",      
      "operator": "==",                
      "value": "2024-09-23T00:00:00"  
    },
    {
      "column": "Resource",      
      "operator": "==",                
      "value": "VM-1"  
    }
  ]
}

Параметры фильтра

Имя Описание
column Имя столбца в целевой таблице, к которой применяется фильтр.
operator Поддерживаемые операторы: ==, =~, inin~>>=, <, . <=between
value Значение для фильтрации в поддерживаемом формате. Значение может быть определенной датой, строкой или другим типом данных в зависимости от столбца.

Ответы

202 (accepted) with header including the OperationId
Ответ Описание
202 (принято) Асинхронный запрос успешно получен. Чтобы проверить успешность или сбой операции, используйте Azure-AsyncOperation URL-адрес, указанный в заголовке ответа.
Другие коды состояния Ответ на ошибку, описывающий причину сбоя операции.

Проверка операций удаления данных и состояния

Вы можете отслеживать действия по удалению данных в рабочей области с помощью журнала действий Azure. В меню рабочей области Log Analytics на портале Azure выберите Журнал действий и найдите события Удаление данных из рабочей области Log Analytics. Выберите событие и откройте его в формате JSON для получения сведений, таких как количество удаленных записей, вызывающий объект и сообщение.

Чтобы проверить состояние операции и просмотреть количество удаленных записей, отправьте запрос GET с URL-адресом Azure-AsyncOperation , указанным в заголовке ответа:

GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.OperationalInsights/locations/{region}/operationstatuses/{responseOperation}?api-version=2023-09-01
Authorization: Bearer eyJ0e...

Ответы

{
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.OperationalInsights/locations/eastus/operationstatuses/00000000-0000-0000-0000-000000001234",
  "name": "00000000-0000-0000-0000-000000001234",
  "status": "Succeeded",
  "startTime": "2024-11-04T09:31:41.689659Z",
  "endTime": "2024-11-04T09:36:49.0252644Z",
  "properties": {
    "RecordCount": 234812,
    "Status": "Completed"
  }
}

Дополнительные сведения см. в разделе "Отслеживание асинхронных операций Azure".

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

Узнайте, как: