Registo de atividades do Azure Monitor
O registo de atividades do Azure Monitor é um registo de plataforma no Azure que fornece informações sobre eventos ao nível da subscrição. O registo de atividades inclui informações como quando um recurso é modificado ou uma máquina virtual é iniciada. Pode ver o registo de atividades no portal do Azure ou obter entradas com o PowerShell e a CLI do Azure. Este artigo fornece informações sobre como ver o registo de atividades e enviá-lo para diferentes destinos.
Para obter mais funcionalidades, crie uma definição de diagnóstico para enviar o registo de atividades para uma ou mais destas localizações pelos seguintes motivos:
- Envie para os Registos do Azure Monitor para consultas e alertas mais complexos e para retenção mais longa, até dois anos.
- Enviar para Hubs de Eventos do Azure para reencaminhar fora do Azure.
- Envie para o Armazenamento do Azure para arquivar a longo prazo mais barato.
Para obter detalhes sobre como criar uma definição de diagnóstico, veja Criar definições de diagnóstico para enviar registos e métricas da plataforma para diferentes destinos.
Nota
- As entradas no Registo de Atividades são geradas pelo sistema e não podem ser alteradas ou eliminadas.
- As entradas no Registo de Atividades representam alterações do plano de controlo, como um reinício da máquina virtual, todas as entradas não relacionadas devem ser escritas nos Registos de Recursos do Azure
Período de retenção
Os eventos do registo de atividades são retidos no Azure durante 90 dias e, depois, eliminados. Não existem custos para entradas durante este período, independentemente do volume. Para obter mais funcionalidades, como retenção mais longa, crie uma definição de diagnóstico e encaminhe as entradas para outra localização com base nas suas necessidades. Veja os critérios na secção anterior.
Ver o registo de atividades
Pode aceder ao registo de atividades a partir da maioria dos menus do portal do Azure. O menu a partir do qual abre o Registo de atividades determina o filtro inicial. Se o abrir a partir do menu Monitorizar , o único filtro estará na subscrição. Se o abrir a partir do menu de um recurso, o filtro será definido para esse recurso. Pode sempre alterar o filtro para ver todas as outras entradas. Selecione Adicionar Filtro para adicionar mais propriedades ao filtro.
Para obter uma descrição das categorias do registo de atividades, veja Esquema de eventos do registo de atividades do Azure.
Transferir o registo de atividades
Selecione Transferir como CSV para transferir os eventos na vista atual.
Ver histórico de alterações
Para alguns eventos, pode ver o histórico de alterações, que mostra as alterações ocorridas durante o tempo desse evento. Selecione um evento no registo de atividades que pretende analisar mais profundamente. Selecione o separador Histórico de alterações (Pré-visualização) para ver todas as alterações associadas a esse evento.
Se existirem alterações associadas ao evento, verá uma lista de alterações que pode selecionar. Selecionar uma alteração abre a página Histórico de alterações (Pré-visualização ). Esta página apresenta as alterações ao recurso. No exemplo seguinte, pode ver que a VM mudou de tamanho. A página apresenta o tamanho da VM antes da alteração e após a alteração. Para saber mais sobre o histórico de alterações, veja Obter alterações de recursos.
Outros métodos para obter eventos do registo de atividades
Também pode aceder a eventos do registo de atividades com os seguintes métodos:
- Utilize o cmdlet Get-AzLog para obter o registo de atividades do PowerShell. Veja Exemplos do PowerShell do Azure Monitor.
- Utilize az monitor activity-log para obter o registo de atividades da CLI. Veja Exemplos da CLI do Azure Monitor.
- Utilize a API REST do Azure Monitor para obter o registo de atividades de um cliente REST.
Enviar para a área de trabalho do Log Analytics
Envie o registo de atividades para uma área de trabalho do Log Analytics para ativar a funcionalidade Registos do Azure Monitor , onde:
- Correlacione os dados do registo de atividades com outros dados de monitorização recolhidos pelo Azure Monitor.
- Consolide as entradas de registo de várias subscrições e inquilinos do Azure numa única localização para análise em conjunto.
- Utilize consultas de registo para realizar análises complexas e obter informações aprofundadas sobre entradas do registo de atividades.
- Utilize alertas de registo com entradas de Atividade para uma lógica de alerta mais complexa.
- Armazene entradas do registo de atividades durante mais tempo do que o período de retenção do registo de atividades.
- Não incorre em custos de ingestão ou retenção de dados para dados de registo de atividades armazenados numa área de trabalho do Log Analytics.
- O período de retenção predefinido no Log Analytics é de 90 dias
Selecione Exportar Registos de Atividades para enviar o registo de atividades para uma área de trabalho do Log Analytics.
Pode enviar o registo de atividades de qualquer subscrição individual para até cinco áreas de trabalho.
Os dados do registo de atividades numa área de trabalho do Log Analytics são armazenados numa tabela chamada AzureActivity
que pode obter com uma consulta de registo no Log Analytics. A estrutura desta tabela varia consoante a categoria da entrada de registo. Para obter uma descrição das propriedades da tabela, veja a referência de dados do Azure Monitor.
Por exemplo, para ver uma contagem de registos de atividades para cada categoria, utilize a seguinte consulta:
AzureActivity
| summarize count() by CategoryValue
Para obter todos os registos na categoria administrativa, utilize a seguinte consulta:
AzureActivity
| where CategoryValue == "Administrative"
Enviar para Hubs de Eventos do Azure
Envie o registo de atividades para Hubs de Eventos do Azure para enviar entradas fora do Azure, por exemplo, para um SIEM de terceiros ou outras soluções de análise de registos. Os eventos do registo de atividades dos hubs de eventos são consumidos no formato JSON com um records
elemento que contém os registos em cada payload. O esquema depende da categoria e é descrito no esquema de eventos do registo de atividades do Azure.
Os seguintes dados de saída de exemplo são provenientes de hubs de eventos para um registo de atividades:
{
"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"
}
}
]
}
Enviar para o Armazenamento do Azure
Envie o registo de atividades para uma conta de Armazenamento do Azure se quiser manter os dados de registo durante mais de 90 dias para auditoria, análise estática ou cópia de segurança. Se precisar de manter os seus eventos durante 90 dias ou menos, não precisa de configurar o arquivo para uma conta de armazenamento. Os eventos do registo de atividades são mantidos na plataforma do Azure durante 90 dias.
Quando envia o registo de atividades para o Azure, é criado um contentor de armazenamento na conta de armazenamento assim que ocorrer um evento. Os blobs no contentor utilizam a seguinte convenção de nomenclatura:
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
Por exemplo, um blob específico pode ter um nome semelhante a:
insights-logs-networksecuritygrouprulecounter/resourceId=/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/y=2020/m=06/d=08/h=18/m=00/PT1H.json
Cada blob PT1H.json contém um objeto JSON com eventos de ficheiros de registo que foram recebidos durante a hora especificada no URL do blob. Durante a hora atual, os eventos são anexados ao ficheiro PT1H.json à medida que são recebidos, independentemente de quando foram gerados. O valor de minuto no URL m=00
é sempre 00
como os blobs são criados numa base por hora.
Cada evento é armazenado no ficheiro PT1H.json com o seguinte formato. Este formato utiliza um esquema de nível superior comum, mas é exclusivo para cada categoria, conforme descrito em Esquema de registo de atividades.
{ "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"}}}
Métodos de coleção legados
Nota
- A solução de Registos de atividades do Azure foi utilizada para reencaminhar Registos de Atividades para o Azure Log Analytics. Esta solução será descontinuada no dia 15 de setembro de 2026 e será automaticamente convertida em Definições de diagnóstico.
Se estiver a recolher registos de atividades com o método de recolha legado, recomendamos que exporte os registos de atividades para a área de trabalho do Log Analytics e desative a coleção legada com as Origens de Dados – Eliminar API da seguinte forma:
Liste todas as origens de dados ligadas à área de trabalho com a API Origens de Dados – Listar Por Área de Trabalho e filtre os registos de atividades ao definir
kind eq 'AzureActivityLog'
.Copie o nome da ligação que pretende desativar na resposta da API.
Utilize a API Origens de Dados – Eliminar para parar de recolher registos de atividades para o recurso específico.
Gerir perfis de registo legados
Os perfis de registo são o método legado para enviar o registo de atividades para o armazenamento ou hubs de eventos. Se estiver a utilizar este método, considere a transição para as definições de diagnóstico, que proporcionam uma melhor funcionalidade e consistência com os registos de recursos.
Se já existir um perfil de registo, primeiro tem de remover o perfil de registo existente e, em seguida, criar um novo.
Utilize
Get-AzLogProfile
para identificar se existe um perfil de registo. Se existir um perfil de registo, anote aName
propriedade .Utilize
Remove-AzLogProfile
para remover o perfil de registo com o valor daName
propriedade .# For example, if the log profile name is 'default' Remove-AzLogProfile -Name "default"
Utilize
Add-AzLogProfile
para criar um novo perfil de registo: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
Propriedade Necessário Descrição Nome Yes Nome do perfil de registo. StorageAccountId No ID do recurso da conta de armazenamento onde o registo de atividades deve ser guardado. serviceBusRuleId No ID da Regra do Service Bus para o espaço de nomes do Service Bus onde pretende criar os hubs de eventos. Esta cadeia tem o formato {service bus resource ID}/authorizationrules/{key name}
.Localização Sim Lista separada por vírgulas de regiões para as quais pretende recolher eventos de registo de atividades. RetentionInDays Yes Número de dias para os quais os eventos devem ser retidos na conta de armazenamento, de 1 a 365. Um valor de zero armazena os registos indefinidamente. Categoria No Lista separada por vírgulas de categorias de eventos a recolher. Os valores possíveis são Escrita, Eliminação e Ação.
Script de exemplo
Este script do PowerShell de exemplo cria um perfil de registo que escreve o registo de atividades numa conta de armazenamento e num hub de eventos.
# 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
Alterações à estrutura de dados
A experiência Exportar registos de atividades envia os mesmos dados que o método legado utilizado para enviar o registo de atividades com algumas alterações à estrutura da AzureActivity
tabela.
As colunas na tabela seguinte foram preteridas no esquema atualizado. Ainda existem no AzureActivity
, mas não têm dados. As substituições destas colunas não são novas, mas contêm os mesmos dados que a coluna preterida. Estão num formato diferente, pelo que poderá ter de modificar as consultas de registo que as utilizam.
JSON do registo de atividades | Nome da coluna do Log Analytics (preterido mais antigo) |
Novo nome da coluna do Log Analytics | Notas |
---|---|---|---|
categoria | Categoria | CategoryValue | |
status Os valores são êxito, início, aceitação, falha |
ActivityStatus Valores idênticos a JSON |
ActivityStatusValue Os valores são alterados para com êxito, iniciados, aceites, com falhas |
Os valores válidos mudam conforme mostrado. |
subStatus | ActivitySubstatus | ActivitySubstatusValue | |
operationName | OperationName | OperationNameValue | A API REST localiza o valor do nome da operação. A IU do Log Analytics mostra sempre inglês. |
resourceProviderName | ResourceProvider | ResourceProviderValue |
Importante
Em alguns casos, os valores nestas colunas podem estar todos em maiúsculas. Se tiver uma consulta que inclua estas colunas, utilize o operador =~ para fazer uma comparação não sensível a maiúsculas e minúsculas.
Foram adicionadas as seguintes colunas ao AzureActivity
no esquema atualizado:
- Authorization_d
- Claims_d
- Properties_d
Passos seguintes
Saiba mais sobre: