Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El registro de actividad de Azure Monitor es un registro de plataforma que proporciona información sobre los eventos de nivel de suscripción. El registro de actividad incluye información como cuando se modifica un recurso o cuando se produce un error de implementación. Puede ver el registro de actividad en Azure Portal o recuperar entradas con PowerShell y la CLI de Azure.
En este artículo, se proporciona información sobre cómo ver el registro de actividad y enviarlo a diferentes destinos.
Nota:
- Las entradas del registro de actividad son generadas por el sistema y no se pueden cambiar ni eliminar.
- Las entradas del registro de actividad representan cambios en el plano de control, como un reinicio de una máquina virtual, las entradas no relacionadas deben escribirse en los registros de recursos de Azure.
- Las entradas del registro de actividad suelen ser el resultado de cambios (operaciones de creación, actualización o eliminación) o de una acción iniciada. Las operaciones centradas en leer detalles de un recurso no suelen capturarse.
Sugerencia
Si se le dirigió a este artículo desde un error de operación durante la implementación, consulte Solucionar errores comunes en la implementación de Azure.
Exportación de registros de actividad
Vaya alregistro de actividad de > y seleccione Exportar registros de actividad.
Nota:
Puede enviar el registro de actividad desde cualquier suscripción única hasta un máximo de cinco áreas de trabajo.
Agregue la configuración de diagnóstico para enviar registros de actividad a una o varias de estas ubicaciones:
- Área de trabajo de Log Analytics para consultas y alertas más complejas.
- Azure Event Hubs para reenviar los registros fuera de Azure.
- Azure Storage para un archivado a largo plazo y más barato.
Consulte Crear configuraciones de diagnóstico para enviar registros y métricas de la plataforma a diferentes destinos para obtener detalles sobre cómo crear una configuración de diagnóstico.
Sugerencia
Envíe datos del registro de actividad a un área de trabajo de Log Analytics para las siguientes ventajas:
- El envío de registros a un área de trabajo de Log Analytics es gratuito durante el período de retención predeterminado.
- Envíe registros a un área de trabajo de Log Analytics para obtener una retención más larga de hasta 12 años.
- Los registros exportados a un área de trabajo de Log Analytics se pueden mostrar en Power BI
- Se proporcionan conclusiones para los registros de actividad exportados a Log Analytics.
Envío a un área de trabajo de Log Analytics
Envíe el registro de actividad a un área de trabajo de Log Analytics para habilitar la característica Registros de Azure Monitor, donde podrá hacer lo siguiente:
- Correlacionar los datos del registro de actividad con otros datos de supervisión recopilados por Azure Monitor.
- Consolidar las entradas de registro de varias suscripciones e inquilinos de Azure en una ubicación para su análisis conjunto.
- Usar las consultas de registro para realizar un análisis complejo y obtener información detallada sobre las entradas del registro de actividad.
- Use alertas de búsqueda de registros con entradas de actividad para una lógica de alertas más compleja.
- Almacenar las entradas del registro de actividad más allá del período de retención del registro de actividad.
- No incurra en cargos por ingesta o retención de datos para los datos de eventos de actividad almacenados en un espacio de trabajo de Log Analytics.
- El período de retención predeterminado en el análisis de registros es de 90 días.
Los datos del registro de actividad de un área de trabajo de Log Analytics se almacenan en una tabla denominada AzureActivity
que se puede recuperar con una consulta de registro en Log Analytics. La estructura de esta tabla varía en función de la categoría de la entrada de registro. Para obtener una descripción de las propiedades de la tabla, vea la referencia de datos de Azure Monitor.
Por ejemplo, para ver un recuento de las entradas del registro de actividad para cada categoría, use la consulta siguiente:
AzureActivity
| summarize count() by CategoryValue
Para recuperar todos los registros de la categoría administrativa, use la consulta siguiente:
AzureActivity
| where CategoryValue == "Administrative"
Importante
En algunos escenarios, es posible que los valores de los campos de AzureActivity tengan mayúsculas y minúsculas diferentes de los valores equivalentes. Tenga cuidado al consultar datos en AzureActivity con el uso de operadores que no distinguen mayúsculas de minúsculas para comparaciones de cadenas o use una función escalar para forzar un campo a un uso uniforme de mayúsculas y minúsculas antes de cualquier comparación. Por ejemplo, use la función tolower() en un campo para forzar que siempre esté en minúsculas o el operador =~ al realizar una comparación de cadenas.
Envío a Azure Event Hubs
Envíe el registro de actividad a Azure Event Hubs para enviar entradas fuera de Azure, por ejemplo, a un SIEM de terceros o a otras soluciones de análisis de registros. Los eventos del registro de actividad de Event Hubs se consumen en formato JSON con un elemento records
que contiene los registros de cada carga. El esquema depende de la categoría y se describe en Esquema de eventos del registro de actividad de Azure.
A continuación, se muestran datos de salida de ejemplo de Event Hubs para un registro de actividad:
{
"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": "aaaa0000-bb11-2222-33cc-444444dddddd",
"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": "ffffffff-eeee-dddd-cccc-bbbbbbbbbbb0",
"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": "00001111-aaaa-2222-bbbb-3333cccc4444",
"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"
}
}
]
}
Envío a Azure Storage
Envíe el registro de actividad a una cuenta de Azure Storage si quiere conservar los datos de registro durante más de 90 días para la auditoría, el análisis estático o hacer una copia de seguridad. Si tiene que conservar los eventos durante 90 días o menos, no necesita configurar el archivado en una cuenta de almacenamiento. Los eventos del registro de actividad se conservan en la plataforma de Azure durante 90 días.
Cuando envíe el registro de actividad a Azure, se creará un contenedor de almacenamiento en la cuenta de almacenamiento en cuanto se produzca un evento. Los blobs del contenedor usan la siguiente convención 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 ejemplo, un blob determinado podría tener un nombre similar al siguiente:
insights-activity-logs/resourceId=/SUBSCRIPTIONS/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/y=2020/m=06/d=08/h=18/m=00/PT1H.json
Cada blob PT1H.json contiene un objeto JSON con eventos de los archivos de registro recibidos durante la hora especificada en la dirección URL del blob. Durante la hora actual, los eventos se anexan al archivo PT1H.json a medida que se reciben, independientemente de cuándo se generaron. El valor de minuto de la dirección URL m=00
siempre es 00
, ya que los blobs se crean por hora.
En el archivo PT1H.json, los eventos se almacenan con el siguiente formato. Este formato usa un esquema de nivel superior común, pero es único para cada categoría, tal como se describe en Esquema del registro de actividad.
{ "time": "2020-06-12T13:07:46.766Z", "resourceId": "/SUBSCRIPTIONS/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/RESOURCEGROUPS/MY-RESOURCE-GROUP/PROVIDERS/MICROSOFT.COMPUTE/VIRTUALMACHINES/MV-VM-01", "correlationId": "bbbb1111-cc22-3333-44dd-555555eeeeee", "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"}}}
Exportar a CSV
Seleccione Descargar como CSV para exportar el registro de actividad a un archivo CSV mediante Azure Portal.
Importante
La exportación puede tardar un tiempo excesivo si tiene un gran número de entradas de registro. Para mejorar el rendimiento, reduzca el intervalo de tiempo de la exportación. En Azure Portal, se establece con la configuración Timespan .
También puede exportar el registro de actividad a un archivo CSV mediante PowerShell o la CLI de Azure como en los ejemplos siguientes.
az monitor activity-log list --start-time "2024-03-01T00:00:00Z" --end-time "2024-03-15T23:59:59Z" --max-items 1000 > activitylog.json
Get-AzActivityLog -StartTime 2021-12-01T10:30 -EndTime 2022-01-14T11:30 | Export-csv operations_logs.csv
El siguiente script de PowerShell de ejemplo exporta el registro de actividad a archivos CSV en intervalos de una hora, cada uno de los cuales se guarda en un archivo independiente.
# Parameters
$subscriptionId = "Subscription ID here" # Replace with your subscription ID
$startTime = [datetime]"2025-05-08T00:00:00" # Adjust as needed
$endTime = [datetime]"2025-05-08T12:00:00" # Adjust as needed
$outputFolder = "\Logs" # Change path as needed
# Ensure output folder exists
if (-not (Test-Path $outputFolder)) {
New-Item -Path $outputFolder -ItemType Directory
}
# Set subscription context
Set-AzContext -SubscriptionId $subscriptionId
# Loop through 1-hour intervals
$currentStart = $startTime
while ($currentStart -lt $endTime) {
$currentEnd = $currentStart.AddHours(1)
$timestamp = $currentStart.ToString("yyyyMMdd-HHmm")
$csvFile = Join-Path $outputFolder "ActivityLog_$timestamp.csv"
Write-Host "Fetching logs from $currentStart to $currentEnd..."
Get-AzActivityLog -StartTime $currentStart -EndTime $currentEnd |
Export-Csv -Path $csvFile -NoTypeInformation
$currentStart = $currentEnd
}
Write-Host "Export completed. Files saved to $outputFolder."
Otros métodos para recuperar eventos del registro de actividad
También puede acceder a los eventos del registro de actividad mediante los métodos siguientes:
- Use el cmdlet Get-AzLog para recuperar el registro de actividad desde PowerShell. Vea Ejemplos de PowerShell de Azure Monitor.
- Use az monitor activity-log para recuperar el registro de actividad desde la CLI. Consulte los ejemplos de CLI de Azure Monitor.
- Use la API REST de Azure Monitor para recuperar el registro de actividad desde un cliente REST.
Métodos de recopilación heredados
Nota:
La solución Registro de actividad de Azure se usó para reenviar registros de actividad a Log Analytics. Esta solución se retirará el 15 de septiembre de 2026 y se convertirá automáticamente en configuración de Diagnóstico.
Si va a recopilar registros de actividad mediante el método de recopilación heredado, se recomienda exportar los registros de actividad al área de trabajo de Log Analytics y deshabilitar la recopilación heredada mediante data Orígenes de datos: eliminar API como se indica a continuación:
Indique todos los orígenes de datos conectados al área de trabajo mediante la Orígenes de datos: listar por API de área de trabajo y filtre los registros de actividad estableciendo
kind eq 'AzureActivityLog'
.Copie el nombre de la conexión que quiere deshabilitar de la respuesta de la API.
Use la API de eliminación de fuentes de datos para dejar de recopilar registros de actividad para un recurso específico.
Administración de perfiles de registro heredados (retirada)
Nota:
- Los perfiles de registros se usaron para reenviar registros de actividad a cuentas de almacenamiento y Event Hubs. Este método se retirará el 15 de septiembre de 2026.
- Si usa este método, pase a Configuración de diagnóstico antes del 15 de septiembre de 2025, cuando dejemos de permitir nuevas creaciones de perfiles de registro.
Los perfiles de registro son el método heredado para enviar el registro de actividad a Azure Storage o Event Hubs. Si utiliza este método, cambie a la configuración de diagnóstico, que proporciona una mejor funcionalidad y coherencia con los registros de recursos.
Si ya existe un perfil de registro, primero debe quitarlo y luego crear uno nuevo.
Use
Get-AzLogProfile
para identificar si existe un perfil de registro. Si existe un perfil de registro, tome nota de la propiedadName
.Utilice
Remove-AzLogProfile
para quitar el perfil de registro usando el valor de la propiedadName
.# For example, if the log profile name is 'default' Remove-AzLogProfile -Name "default"
Use
Add-AzLogProfile
para crear un nuevo perfil de registro: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
Propiedad Obligatorio Descripción Nombre Sí Nombre de su perfil de registro. StorageAccountId No Identificador de recurso de la cuenta de almacenamiento donde se debe guardar el registro de actividad. serviceBusRuleId No Id. de la regla de Service Bus para el espacio de nombres de Service Bus donde quiere que se creen los centros de eventos. Esta cadena tiene el formato {service bus resource ID}/authorizationrules/{key name}
.Ubicación Sí Lista separada por comas de las regiones para las que quiere recopilar eventos del registro de actividad. RetentionInDays Sí Número de días que se deben retener los eventos en la cuenta de almacenamiento, entre 1 y 365. Con el valor cero, se almacenan los registros indefinidamente. Categoría No Lista separada por comas de las categorías de eventos que se van a recopilar. Los valores posibles son Write, Delete y Action.
Script de ejemplo
El script de PowerShell de ejemplo crea un perfil de registro que escribe el registro de actividad en una cuenta de almacenamiento y un centro 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>"
$storageAccountName = "<Storage Account name>"
# 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
Cambios en la estructura de datos
La experiencia de exportación de registros de actividad envía los mismos datos que el método heredado utilizado para enviar el registro de actividad con algunos cambios en la estructura de la tabla AzureActivity
.
Las columnas de la tabla siguiente están en desuso en el esquema actualizado. Todavía existen en AzureActivity
, pero no tienen datos. Los reemplazos de estas columnas no son nuevos, pero contienen los mismos datos que la columna en desuso. Tienen un formato distinto, por lo que es posible que tenga que modificar las consultas de registro que las utilizan.
Código JSON del registro de actividad | Nombre de columna de Log Analytics anterior (en desuso) |
Nuevo nombre de columna de Log Analytics | Notas |
---|---|---|---|
categoría | Categoría | CategoryValue | |
estado Los valores son success , start , accept , , failure |
Estado de Actividad Valores iguales que en JSON |
ValorDelEstadoDeActividad Los valores cambian a succeeded , started , accepted , failed |
Los valores válidos cambian tal como se ha mostrado. |
subStatus | ActivitySubstatus | ActivitySubstatusValue | |
nombreDeOperación | NombreDeOperación | OperationNameValue | La API REST localiza el valor del nombre de la operación. La interfaz de usuario de Log Analytics siempre se muestra en inglés. |
nombreDelProveedorDeRecursos | Proveedor de Recursos | ValorDelProveedorDeRecursos |
Importante
En algunos casos, los valores de estas columnas pueden estar en mayúsculas. Si tiene una consulta que incluye estas columnas, utilice el operador =~ para realizar una comparación sin distinguir entre mayúsculas y minúsculas.
Las columnas siguientes se han agregado a AzureActivity
en el esquema actualizado:
Authorization_d
Claims_d
Properties_d
Pasos siguientes
Más información sobre: