Журнал действий Azure
Журнал действий — это журнал платформы в Azure, который предоставляет аналитические сведения о событиях уровня подписки, Журнал действий включает информацию о том, когда ресурс модифицирован или запущена виртуальная машина. Вы можете просмотреть журнал действий на портале Azure или получить записи с помощью PowerShell и CLI. Эта статья содержит сведения о просмотре журнала действий и его отправке в различные назначения.
С целью получения дополнительных функциональностей следует создать параметр диагностики для отправки журнала действий в одно или несколько из этих расположений по следующим причинам:
- в журналы Azure Monitor для более сложных запросов, предупреждений и более длительного хранения (до двух лет);
- в Центры событий Azure для пересылки за пределы Azure;
- в службу хранилища Azure для более дешевой долгосрочной архивации.
Подробные сведения о создании параметров диагностики см. в статье Создание параметров диагностики для отправки журналов платформы и метрик в различные места назначения.
Примечание
Записи в журнале действий формируются системой и их нельзя изменить или удалить.
Период удержания
События журнала действий сохраняются в Azure в течение 90 дней, а затем удаляются. В течение этого времени плата за записи не взимается независимо от объема. Для получения дополнительных функциональностей, например для более длительного хранения, следует создать параметр диагностики и направить все записи в другое расположение в зависимости от ваших потребностей. См. условия, описанные в предыдущем разделе этой статьи.
Просмотр журнала действий
Доступ к журналу действий можно получить из большинства меню на портале Azure. Ото того, из какого меню он открыт, зависит его первоначальный фильтр. Если открыть его из меню Монитор, единственным фильтром будет только подписка. Если открыть его из меню ресурса, то для фильтра будет задан этот ресурс. В любой момент можно изменить фильтр, чтобы просмотреть все остальные записи. Нажмите Добавить фильтр, чтобы расширить свойства фильтра.
Описание категорий журналов действий см. в статье Схема событий журнала действий Azure.
Загрузка журнала действий
Нажмите Загрузить как CSV-файл, чтобы загрузить события в текущем представлении.
Просмотр журнала изменений
Для некоторых событий можно просмотреть журнал изменений, в котором указывается, какие изменения произошли в течение времени этого события. Выберите из журнала действий событие, которое вам нужно изучить более подробно. Выберите вкладку Журнал изменений (предварительная версия) , чтобы просмотреть все изменения, связанные с этим событием.
Если с событием связаны какие-либо изменения, вы увидите здесь список изменений, которые можно выбрать. Это действие открывает страницу Журнал изменений (предварительная версия) . На этой странице отображаются все изменения ресурса. Как видно в следующем примере, здесь можно не только увидеть, что изменился размер виртуальной машины, но и узнать ее размер до изменения и после изменения. Дополнительные сведения о журнале изменений см. в статье Получение данных об изменении ресурса.
Другие методы получения событий журнала действий
Можно также получить доступ к событиям журнала действий с помощью нижеуказанных методов.
- Чтобы получить журнал действий с помощью PowerShell, используйте командлет Get-AzLog. См. Примеры для Azure Monitor PowerShell.
- Чтобы получить журнал действий с помощью интерфейса командной строки, используйте команду az monitor activity-log. См. примеры CLI для Azure Monitor.
- Чтобы получить журнал действий из клиента REST, используйте Azure Monitor REST API.
Отправка в рабочую область Log Analytics
Отправьте журнал действий в рабочую область Log Analytics, чтобы включить функции журналов Azure Monitor, такие как:
- Сопоставление данных журнала действий с другими данными мониторинга, собранными Azure Monitor.
- Объединение записей журнала из нескольких подписок Azure и клиентов в единое место для совместного анализа.
- Использование запросов журналов для сложного анализа и получения подробных сведений о записях журнала действий.
- Использование оповещений журнала с записями действий, позволяющих создавать более сложные алгоритмы оповещений.
- Храните записи журнала действий дольше срока хранения журнала действий.
- Отсутствие платы за прием данных журнала действий, хранящихся в рабочей области Log Analytics.
- Отсутствие платы за хранение данных журнала действий в рабочей области Log Analytics за первые 90 дней.
Выберите Экспортировать журнал действий.
для отправки в рабочую область Log Analytics. Журнал действий можно отправить из любой одной подписки в пять рабочих областей.
Данные журнала действий в рабочей области Log Analytics хранятся в таблице с именем AzureActivity, которую можно получить с помощью запроса журнала в LOG Analytics. Структура этой таблицы зависит от категории записи журнала. Описание свойств таблицы см. в Справочнике по данным Azure Monitor.
Например, чтобы просмотреть количество записей журнала действий для каждой категории, используйте нижеуказанный запрос.
AzureActivity
| summarize count() by CategoryValue
Чтобы получить все записи в административной категории, используйте нижеуказанный запрос.
AzureActivity
| where CategoryValue == "Administrative"
Отправка в Центры событий Azure
Отправьте журнал действий в Центры событий Azure, чтобы передать записи за пределы Azure, например в сторонние SIEM или другие решения для анализа журналов. События журнала действий из Центров событий потребляются в формате JSON с элементом records
, содержащим записи в каждой полезной нагрузке. Схема зависит от категории и описана в статье Схема для учетной записи хранения и Центров событий.
Ниже приведен пример выходных данных из Центров событий для журнала действий.
{
"records": [
{
"time": "2019-01-21T22:14:26.9792776Z",
"resourceId": "/subscriptions/s1/resourceGroups/MSSupportGroup/providers/microsoft.support/supporttickets/115012112305841",
"operationName": "microsoft.support/supporttickets/write",
"category": "Write",
"resultType": "Success",
"resultSignature": "Succeeded.Created",
"durationMs": 2826,
"callerIpAddress": "111.111.111.11",
"correlationId": "c776f9f4-36e5-4e0e-809b-c9b3c3fb62a8",
"identity": {
"authorization": {
"scope": "/subscriptions/s1/resourceGroups/MSSupportGroup/providers/microsoft.support/supporttickets/115012112305841",
"action": "microsoft.support/supporttickets/write",
"evidence": {
"role": "Subscription Admin"
}
},
"claims": {
"aud": "https://management.core.windows.net/",
"iss": "https://sts.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47/",
"iat": "1421876371",
"nbf": "1421876371",
"exp": "1421880271",
"ver": "1.0",
"http://schemas.microsoft.com/identity/claims/tenantid": "00000000-0000-0000-0000-000000000000",
"http://schemas.microsoft.com/claims/authnmethodsreferences": "pwd",
"http://schemas.microsoft.com/identity/claims/objectidentifier": "2468adf0-8211-44e3-95xq-85137af64708",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn": "admin@contoso.com",
"puid": "20030000801A118C",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "9vckmEGF7zDKk1YzIY8k0t1_EAPaXoeHyPRn6f413zM",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname": "John",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname": "Smith",
"name": "John Smith",
"groups": "cacfe77c-e058-4712-83qw-f9b08849fd60,7f71d11d-4c41-4b23-99d2-d32ce7aa621c,31522864-0578-4ea0-9gdc-e66cc564d18c",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": " admin@contoso.com",
"appid": "c44b4083-3bq0-49c1-b47d-974e53cbdf3c",
"appidacr": "2",
"http://schemas.microsoft.com/identity/claims/scope": "user_impersonation",
"http://schemas.microsoft.com/claims/authnclassreference": "1"
}
},
"level": "Information",
"location": "global",
"properties": {
"statusCode": "Created",
"serviceRequestId": "50d5cddb-8ca0-47ad-9b80-6cde2207f97c"
}
}
]
}
Отправка в службу хранилища Azure
Вы можете организовать передачу данных в учетную запись службы хранилища Azure, если хотите хранить данные журнала дольше 90 дней для аудита, статического анализа или резервного копирования. Если требуется хранить события в течение не более чем 90 дней, не нужно настраивать архивацию в учетную запись хранения, так как события журнала действий можно хранить в течение этого периода на платформе Azure.
При отправке журнала действий в Azure в учетной записи хранения создается контейнер хранилища, как только происходит событие. BLOB-объекты в контейнере используют следующее соглашение об именовании.
insights-activity-logs/resourceId=/SUBSCRIPTIONS/{subscription ID}/y={four-digit numeric year}/m={two-digit numeric month}/d={two-digit numeric day}/h={two-digit 24-hour clock hour}/m=00/PT1H.json
Например, определенный BLOB-объект может иметь такое имя:
insights-logs-networksecuritygrouprulecounter/resourceId=/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/y=2020/m=06/d=08/h=18/m=00/PT1H.json
Каждый большой двоичный объект PT1H.json содержит большой двоичный объект JSON с событиями, произошедшими в течение часа, указанного в URL-адресе этого объекта (например, h=12). В течение заданного часа события добавляются в файл PT1H.json по мере возникновения. Значение минуты (m=00) всегда равно 00, так как события журнала разбиваются на отдельные BLOB-объекты каждый час.
Каждое событие хранится в файле PT1H.json в нижеуказанном формате, который использует общую схему верхнего уровня, но для каждой категории он в ином случае уникален, как описано в Схеме журнала действий.
{ "time": "2020-06-12T13:07:46.766Z", "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/MY-RESOURCE-GROUP/PROVIDERS/MICROSOFT.COMPUTE/VIRTUALMACHINES/MV-VM-01", "correlationId": "0f0cb6b4-804b-4129-b893-70aeeb63997e", "operationName": "Microsoft.Resourcehealth/healthevent/Updated/action", "level": "Information", "resultType": "Updated", "category": "ResourceHealth", "properties": {"eventCategory":"ResourceHealth","eventProperties":{"title":"This virtual machine is starting as requested by an authorized user or process. It will be online shortly.","details":"VirtualMachineStartInitiatedByControlPlane","currentHealthStatus":"Unknown","previousHealthStatus":"Unknown","type":"Downtime","cause":"UserInitiated"}}}
Устаревшие методы сбора журнала
В этом разделе описаны устаревшие методы для сбора журнала действий, которые использовались до настройки диагностики. Если вы используете эти методы, следует рассмотреть возможность перехода к параметрам диагностики, обеспечивающим лучшую функциональность и согласованность с журналами ресурсов.
Профили журнала
Профили журнала — это устаревший метод отправки журнала действий в службу хранилища Azure или Центры событий Azure. Используйте следующую процедуру, чтобы продолжить работу с профилем журнала или отключить его при подготовке к миграции в параметр диагностики.
В меню Azure Monitor на портале Azure выберите пункт Журнал действий.
Выберите Экспортировать журнал действий.
Щелкните сиреневый баннер для перехода к устаревшему интерфейсу.
Настройка профиля журнала с использованием PowerShell
Если профиль журнала уже существует, сначала удалите его, а затем создайте новый.
Используйте
Get-AzLogProfile
, чтобы проверить, существует ли профиль журнала. Если профиль журнала существует, найдите свойство name.Удалите журнал профиля с помощью
Remove-AzLogProfile
, используя значение свойства name.# For example, if the log profile name is 'default' Remove-AzLogProfile -Name "default"
Создайте профиль журнала с помощью
Add-AzLogProfile
:Add-AzLogProfile -Name my_log_profile -StorageAccountId /subscriptions/s1/resourceGroups/myrg1/providers/Microsoft.Storage/storageAccounts/my_storage -serviceBusRuleId /subscriptions/s1/resourceGroups/Default-ServiceBus-EastUS/providers/Microsoft.ServiceBus/namespaces/mytestSB/authorizationrules/RootManageSharedAccessKey -Location global,westus,eastus -RetentionInDays 90 -Category Write,Delete,Action
Свойство Обязательно Описание name Да Имя профиля журнала. StorageAccountId Нет Идентификатор ресурса для учетной записи хранения, в которую будет сохранен журнал действий. serviceBusRuleId Нет Идентификатор правила служебной шины для пространства имен служебной шины, в котором вы сможете создать концентраторы событий. Это строка в формате: {service bus resource ID}/authorizationrules/{key name}
.Расположение Да Разделенный запятыми список регионов, для которых будут собираться события журнала действий. RetentionInDays Да Количество дней, в течение которых будут храниться события в учетной записи хранения: от 1 до 365. Нулевое значение означает, что журналы хранятся неограниченно долго. Категория Нет Разделенный запятыми список категорий событий, которые будут собираться. Возможные значения: Write, Delete и Action.
Пример сценария
Ниже приведен пример скрипта PowerShell для создания профиля журнала, который записывает журнал действий в учетную запись хранения и концентратор событий.
# Settings needed for the new log profile
$logProfileName = "default"
$locations = (Get-AzLocation).Location
$locations += "global"
$subscriptionId = "<your Azure subscription Id>"
$resourceGroupName = "<resource group name your Event Hub belongs to>"
$eventHubNamespace = "<Event Hub namespace>"
# Build the service bus rule Id from the settings above
$serviceBusRuleId = "/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/Microsoft.EventHub/namespaces/$eventHubNamespace/authorizationrules/RootManageSharedAccessKey"
# Build the Storage Account Id from the settings above
$storageAccountId = "/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/Microsoft.Storage/storageAccounts/$storageAccountName"
Add-AzLogProfile -Name $logProfileName -Location $locations -StorageAccountId $storageAccountId -ServiceBusRuleId $serviceBusRuleId
Настройка профиля журнала с использованием Azure CLI
Если профиль журнала уже существует, сначала удалите его, а затем создайте новый.
Используйте
az monitor log-profiles list
, чтобы проверить, существует ли профиль журнала.Удалите журнал профиля с помощью
az monitor log-profiles delete --name "<log profile name>
, используя значение свойства name.Создайте профиль журнала с помощью следующего
az monitor log-profiles create
:az monitor log-profiles create --name "default" --location null --locations "global" "eastus" "westus" --categories "Delete" "Write" "Action" --enabled false --days 0 --service-bus-rule-id "/subscriptions/<YOUR SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.EventHub/namespaces/<Event Hub NAME SPACE>/authorizationrules/RootManageSharedAccessKey"
Свойство Обязательно Описание name Да Имя профиля журнала. storage-account-id Да Идентификатор ресурса для учетной записи хранения, в которую будут сохранены журналы действий. Расположения Да Разделенный пробелами список регионов, для которых будут собираться события журнала действий. Вы можете просмотреть список всех регионов для своей подписки с помощью az account list-locations --query [].name
.days Да Количество дней, в течение которых будут храниться события: от 1 до 365. Нулевое значение означает, что журналы будут храниться неограниченно долго, то есть всегда. Если значение равно нулю, то для параметра "enabled" нужно установить значение "false". Включено Да Верно или неверно. Позволяет включить или отключить политику хранения. Если установлено значение True, параметр дней должен иметь значение больше 0. Категории Да Разделенный пробелами список категорий событий, которые будут собираться. Возможные значения: Write, Delete или Action.
Рабочая область Log Analytics
Устаревший метод отправки журнала действий в рабочую область Log Analytics подключается к журналу в конфигурации рабочей области.
В меню Рабочие области Log Analytics на портале Azure выберите рабочую область для сбора журнала действий.
В разделе Источники данных рабочей области в меню рабочей области выберите Журнал действий Azure.
Выберите подписку, которую нужно подключить.
Нажмите Подключить, чтобы добавить журнал действий в подписке к выбранной рабочей области. Если подписка уже подключена к другой рабочей области, сначала нажмите Отключить, чтобы деактивировать ее.
Чтобы деактивировать этот параметр, выполните ту же процедуру и нажмите Отключить, чтобы удалить подписку из рабочей области.
Изменения структуры данных
Интерфейс экспорта журналов действий отправляет те же данные, что и устаревший метод, используемый для отправки журнала действий, с некоторыми изменениями в структуре таблицы AzureActivity.
Столбцы из следующей таблицы являются устаревшими в обновленной схеме. Они по-прежнему существуют в AzureActivity, но не содержат данных. При замене этих столбцов новая информация не добавляется, поскольку они содержат те же данные, что и устаревший столбец. Они имеют другой формат, поэтому может потребоваться изменить запросы к журналу, в которых они используются.
JSON журнала действий | Столбец имени Log Analytics (устаревшая версия) |
Имя нового столбца Log Analytics | Примечания |
---|---|---|---|
категория | Категория | CategoryValue | |
status Значения (успешно, начало, принять, сбой) |
ActivityStatus Значения, совпадающие с JSON |
ActivityStatusValue Значения, изменяющиеся на (успешно, начато, принято, произошел сбой) |
Допустимые значения изменяются, как показано |
subStatus | ActivitySubstatus | ActivitySubstatusValue | |
operationName | OperationName | OperationNameValue | REST API локализует значение имени операции. В пользовательском интерфейсе Log Analytics всегда отображается английский язык. |
resourceProviderName | ResourceProvider | ResourceProviderValue |
Важно!
В некоторых случаях значения в этих столбцах могут быть заданы в верхнем регистре. Если запрос включает эти столбцы, следует использовать оператор =~ для сравнения без учета регистра.
В AzureActivity в обновленной схеме добавлены следующие столбцы:
- Authorization_d
- Claims_d
- Properties_d
Аналитика журналов действий
Аналитика журналов действий позволяет просматривать сведения об изменениях в ресурсах и группах ресурсов в подписке. На панелях мониторинга также отображаются данные о том, какие пользователи или службы выполняли действия в подписке, и также можно узнать состояние действий. Из этой статьи вы узнаете, как просматривать аналитические сведения в журналах действий на портале Azure.
Прежде чем использовать аналитику журнала действий, необходимо включить отправку журналов в рабочую область Log Analytics.
Как работает аналитика журналов действий?
Журналы действий, отправляемые в рабочую область Log Analytics, хранятся в таблице с именем AzureActivity.
Аналитика журналов действий — это курируемая книга Log Analytics с панелями мониторинга для визуализации данных в таблице AzureActivity. Например, можно узнать, какие администраторы удалили, обновили или создали ресурсы, а также какие действия завершились успехом или неудачей.
Просмотр аналитики журналов действий — уровень группы ресурсов или подписки
Чтобы просмотреть аналитику журналов действий на уровне группы ресурсов или подписки, выполните следующие действия:
На портале Azure выберите Монитор>Книги.
Выберите Аналитика журналов действий в разделе Аналитика.
В верхней части страницы Аналитика журналов действий выберите:
- одну или несколько подписок из раскрывающегося списка Subscriptions;
- ресурсы и группы ресурсов из раскрывающегося списка CurrentResource;
- диапазон времени, для которого необходимо просмотреть данные, из раскрывающегося списка TimeRange.
Просмотр аналитики журналов действий в любом ресурсе Azure
Примечание
- Сейчас ресурсы Applications Insights не поддерживаются для этой книги.
Чтобы просмотреть аналитику журналов действий на уровне ресурсов, выполните следующие действия:
На портале Azure перейдите к ресурсу и выберите Книги.
Выберите Аналитика журналов действий в разделе Аналитика журналов действий.
В верхней части страницы Аналитика журналов действий выберите:
- диапазон времени, для которого необходимо просмотреть данные, из раскрывающегося списка TimeRange.
В разделе Записи журналов действий Azure отображается количество записей журнала действий в каждой категории журнала действий.
В разделе Журналы действий по состояниям отображается количество записей журнала действий в каждом состоянии.
На уровне подписки и группы ресурсов в разделах Журналы действий по ресурсам и Журналы действий по поставщикам ресурсов отображается количество записей журнала действий для каждого ресурса и поставщика ресурсов.