Registro de actividad de Azure Monitor

El registro de actividad de Azure Monitor es un registro de plataforma de Azure que proporciona información sobre los eventos del nivel de suscripción. El registro de actividad incluye información como, por ejemplo, cuándo se modificó un recurso o cuándo se inició una máquina virtual. 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.

Para obtener mas funcionalidades, debe crear una configuración de diagnóstico para enviar el registro de actividad a una o varias de estas ubicaciones por los siguientes motivos:

  • Enviar a los registros de Azure Monitor para aumentar la complejidad de las consultas y las alertas, así como la duración de la retención, hasta dos años.
  • Enviar a Azure Event Hubs para reenviarlo fuera de Azure.
  • Enviar a Azure Storage para obtener un archivado a largo plazo y más barato.

Consulte Configuración de diagnóstico en Azure Monitor para obtener detalles sobre cómo crear una configuración de diagnóstico.

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 máquina virtual. Las entradas no relacionadas deben escribirse en los registros de recursos de Azure.

Período de retención

Los eventos del registro de actividad se conservan en Azure durante 90 días y después se eliminan. No se aplican cargos por las entradas durante este tiempo, independientemente del volumen. Para obtener más funcionalidades, como un mayor tiempo de retención, cree una configuración de diagnóstico y enrute las entradas a otra ubicación en función de sus necesidades. Consulte los criterios de la sección anterior.

Visualización del registro de actividad

Puede acceder al registro de actividad desde la mayoría de los menús de Azure Portal. El menú en el que lo abra determinará el filtro inicial. Si lo abre desde el menú Supervisión, el único filtro estará en la suscripción. Si lo abre desde el menú de un recurso, el filtro se establecerá en ese recurso. Siempre puede cambiar el filtro para ver todas las demás entradas. Seleccione Agregar filtro para agregar más propiedades al filtro.

Captura de pantalla que muestra el registro de actividad.

Para obtener una descripción de las categorías del registro de actividad, consulte Esquema de eventos del registro de actividad de Azure.

Descarga del registro de actividad

Seleccione Descargar como archivo .csv para descargar los eventos en la vista actual.

Captura de pantalla que muestra la descarga del registro de actividad.

Visualización del historial de cambios

En el caso de algunos eventos, puede ver el historial de cambios, en el que se muestran los cambios que se han producido durante la hora del evento. Seleccione un evento en el registro de actividad que quiera examinar más profundamente. Seleccione la pestaña Historial de cambios (versión preliminar) para ver los cambios asociados a ese evento.

Captura de pantalla que muestra la lista del historial de cambios de un evento.

Si hay cambios asociados con el evento, verá una lista de cambios que puede seleccionar. Al seleccionar un cambio, se abre la página Historial de cambios (versión preliminar). En esta página, se muestran los cambios en el recurso. En el ejemplo siguiente, puede ver que la máquina virtual ha cambiado los tamaños. La página muestra el tamaño de la máquina virtual antes del cambio y después del cambio. Para obtener más información sobre el historial de cambios, vea Obtención de los cambios del recurso.

Captura de pantalla que muestra la página del historial de cambios con las diferencias.

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:

Envío al á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.
  • Usar las alertas de registro 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 hay cargos por ingesta o retención de datos para los datos del registro de actividad almacenados en un área de trabajo de Log Analytics.
  • El período de retención predeterminado de Log Analytics es de 90 días.

Seleccione Exportar registros de actividad para enviar el registro de actividad a un área de trabajo de Log Analytics.

Captura de pantalla que muestra la exportación de los registros de actividad.

Puede enviar el registro de actividad desde cualquier suscripción única hasta un máximo de cinco áreas de trabajo.

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"

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": "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"
            }
        }
    ]
}

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 la 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-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 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 de eventos del registro de actividad de Azure.

{ "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 recopilación heredados

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:

  1. 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 filter=kind='AzureActivityLog'.

    Captura de pantalla que muestra la configuración de Orígenes de datos: listar por API de área de trabajo.

  2. Copie el nombre de la conexión que quiere deshabilitar de la respuesta de la API.

    Captura de pantalla que muestra la información que se debe copiar para la salida de Orígenes de datos: listar por API de área de trabajo.

  3. Use Orígenes de datos: eliminar API para dejar de recopilar registros de actividad para el recurso específico.

    Captura de pantalla de la configuración de Orígenes de datos: eliminar API.

Administración de perfiles de registro heredados

Los perfiles de registro son el método heredado para enviar el registro de actividad a Azure Storage o Event Hubs. Si usa este método, considere la posibilidad de realizar la transición a la configuración de diagnóstico, ya 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.

  1. Use Get-AzLogProfile para identificar si existe un perfil de registro. Si existe un perfil de registro, tome nota de la propiedad Name.

  2. Use Remove-AzLogProfile para quitar el perfil de registro mediante el uso del valor de la propiedad Name.

    # For example, if the log profile name is 'default'
    Remove-AzLogProfile -Name "default"
    
  3. 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 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}.
    Location Lista separada por comas de las regiones para las que quiere recopilar eventos del registro de actividad.
    RetentionInDays 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.
    Category 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>"

# 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
(antiguo en desuso)
Nuevo nombre de columna de Log Analytics Notas
category Category CategoryValue
status

Los valores son success, start, accept y failure.
ActivityStatus

Valores iguales que en JSON
ActivityStatusValue

Los valores cambian a succeeded, started, accepted y failed.
Los valores válidos cambian tal como se ha mostrado.
subStatus ActivitySubstatus ActivitySubstatusValue
operationName OperationName 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.
resourceProviderName ResourceProvider ResourceProviderValue

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: