Envío de registros de recursos de Azure a áreas de trabajo de Log Analytics, Event Hubs o Azure Storage
Los registros de recursos de Azure son Registros de plataforma que proporcionan información sobre las operaciones que se realizan en un recurso de Azure. El contenido de los registros de recursos es diferente para cada tipo de recurso. Los registros de recurso no se recopilan de forma predeterminada. Para recopilar registros de recursos, debe habilitar y configurar la configuración de diagnóstico o usar reglas de recopilación de datos. Para más información sobre las reglas de recopilación de datos, consulte Reglas de recopilación de datos en Azure Monitor. En este artículo se describe la configuración de diagnóstico necesaria para cada recurso de Azure para enviar sus registros de recursos a áreas de trabajo de Log Analytics, Event Hubs o Azure Storage.
Envío al área de trabajo de Log Analytics
Envíe registros de recursos a un área de trabajo de Log Analytics para habilitar las características de los registros de Azure Monitor, donde puede hacer lo siguiente:
- Correlacionar los datos del registro de recurso con otros datos de supervisión recopilados por Azure Monitor.
- Consolidar las entradas de registro de varios inquilinos, suscripciones y recursos 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 los datos de registro.
- Use alertas de búsqueda de registros con una lógica de alerta compleja.
Cree una configuración de diagnóstico para enviar los registro de recursos a un área de trabajo de Log Analytics. Estos datos se almacenan en tablas, tal como se describe en Estructura de registros de Azure Monitor. Las tablas usadas por los registros de recursos dependen del tipo de recurso y del tipo de colección que usa el recurso. Hay dos tipos de modos de recopilación para los registros de recursos:
- Azure Diagnostics: todos los datos se escriben en la tabla AzureDiagnostics.
- Específicas del recurso: los datos se escriben en tabla individuales para cada categoría del recurso.
Específico del recurso
En el caso de los registros que usan el modo específico del recurso, se crean tablas individuales en el área de trabajo seleccionada para cada categoría de registro seleccionada en la configuración de diagnóstico. Los registros específicos de recursos tienen las siguientes ventajas sobre los registros de diagnóstico de Azure:
- Facilita considerablemente el trabajo con los datos en las consultas de registro.
- Proporciona una mayor capacidad de detección de los esquemas y su estructura.
- Mejora el rendimiento de la latencia de ingesta y de los tiempos de consulta.
- Ofrece la posibilidad de conceder derechos de control de acceso basado en rol de Azure sobre una tabla específica.
Para obtener una descripción de los registros y tablas específicos de recursos, consulte Categorías de registro de recursos compatibles para Azure Monitor.
Modo Azure Diagnostics
En el modo de diagnóstico de Azure, todos los datos de cualquier configuración de diagnóstico se recopilan en la tabla AzureDiagnostics. Este método heredado se usa hoy en día por una minoría de servicios de Azure. Dado que varios tipos de recursos envían datos a la misma tabla, su esquema es el superconjunto de los esquemas de todos los tipos de datos diferentes que se recopilan. Para más información sobre la estructura de esta tabla y cómo funciona con este número potencialmente grande de columnas, consulte Referencia de AzureDiagnostics.
La tabla AzureDiagnostics contiene el resourceId del recurso que ha generado el registro, la categoría del registro y la hora en que se generó el registro, así como las propiedades específicas del recurso.
Selección del modo de recopilación
La mayoría de los recursos de Azure escriben los datos en el área de trabajo en modo Azure Diagnostics o específico del recurso sin darle la opción de elegir. Para más información, consulte Esquemas comunes y específicos del servicio para los registros de recursos de Azure.
Todos los servicios de Azure usarán, llegado el momento, el modo específico del recurso. Como parte de esta transición, algunos recursos permiten seleccionar un modo en la configuración de diagnóstico. Especifique el modo específico del recurso para las configuraciones de diagnóstico nuevas, ya que facilita la administración de los datos. También puede ayudarle a evitar migraciones complejas más adelante.
Nota:
Para ver un ejemplo de configuración del modo de recopilación mediante una plantilla de Azure Resource Manager, consulte Ejemplos de plantillas de Resource Manager para la configuración de diagnóstico en Azure Monitor.
En el modo específico del recurso se puede modificar una configuración de diagnóstico existente. En este caso, los datos que ya se han recopilado permanecen en la tabla AzureDiagnostics
hasta que se eliminen de acuerdo con la configuración de retención del área de trabajo. Los nuevos datos se recopilan en la tabla dedicada. Use el operador union para consultar datos en ambas tablas.
Puede continuar con el blog Actualizaciones de Azure para ver noticias sobre los servicios de Azure que admiten el modo específico del recurso.
Envío a Azure Event Hubs
Envíe registros de recursos a un centro de eventos para enviarlos fuera de Azure. Por ejemplo, los registros de recursos se pueden enviar a un sistema SIEM de terceros u otras soluciones de Log Analytics. Los registros de recursos de los centros de eventos se consumen en formato JSON con un elemento records
que contiene los registros de cada carga. El esquema depende del tipo de recurso, tal y como se describe en Esquemas comunes y específicos del servicio para los registros de recursos de Azure.
Los siguientes datos de salida de ejemplo son de un registro de recursos de Azure Event Hubs:
{
"records": [
{
"time": "2019-07-15T18:00:22.6235064Z",
"workflowId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/RESOURCEGROUPS/JOHNKEMTEST/PROVIDERS/MICROSOFT.LOGIC/WORKFLOWS/JOHNKEMTESTLA",
"resourceId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/RESOURCEGROUPS/JOHNKEMTEST/PROVIDERS/MICROSOFT.LOGIC/WORKFLOWS/JOHNKEMTESTLA/RUNS/08587330013509921957/ACTIONS/SEND_EMAIL",
"category": "WorkflowRuntime",
"level": "Error",
"operationName": "Microsoft.Logic/workflows/workflowActionCompleted",
"properties": {
"$schema": "2016-04-01-preview",
"startTime": "2016-07-15T17:58:55.048482Z",
"endTime": "2016-07-15T18:00:22.4109204Z",
"status": "Failed",
"code": "BadGateway",
"resource": {
"subscriptionId": "AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E",
"resourceGroupName": "JohnKemTest",
"workflowId": "2222cccc-33dd-eeee-ff44-aaaaaa555555",
"workflowName": "JohnKemTestLA",
"runId": "08587330013509921957",
"location": "westus",
"actionName": "Send_email"
},
"correlation": {
"actionTrackingId": "3333dddd-44ee-ffff-aa55-bbbbbbbb6666",
"clientTrackingId": "08587330013509921958"
}
}
},
{
"time": "2019-07-15T18:01:15.7532989Z",
"workflowId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/RESOURCEGROUPS/JOHNKEMTEST/PROVIDERS/MICROSOFT.LOGIC/WORKFLOWS/JOHNKEMTESTLA",
"resourceId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/RESOURCEGROUPS/JOHNKEMTEST/PROVIDERS/MICROSOFT.LOGIC/WORKFLOWS/JOHNKEMTESTLA/RUNS/08587330012106702630/ACTIONS/SEND_EMAIL",
"category": "WorkflowRuntime",
"level": "Information",
"operationName": "Microsoft.Logic/workflows/workflowActionStarted",
"properties": {
"$schema": "2016-04-01-preview",
"startTime": "2016-07-15T18:01:15.5828115Z",
"status": "Running",
"resource": {
"subscriptionId": "AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E",
"resourceGroupName": "JohnKemTest",
"workflowId": "dddd3333-ee44-5555-66ff-777777aaaaaa",
"workflowName": "JohnKemTestLA",
"runId": "08587330012106702630",
"location": "westus",
"actionName": "Send_email"
},
"correlation": {
"actionTrackingId": "ffff5555-aa66-7777-88bb-999999cccccc",
"clientTrackingId": "08587330012106702632"
}
}
}
]
}
Envío a Azure Storage
Envíe registros de recursos a Azure Storage para conservarlos en un archivo. Después de crear la configuración de diagnóstico, se crea un contenedor de almacenamiento en la cuenta de almacenamiento en cuanto se produzca un evento en una de las categorías de registro habilitadas.
Nota:
Una alternativa al archivado es enviar el registro de recursos a una tabla del área de trabajo de Log Analytics con retención a largo plazo y de bajo coste.
Los blobs del contenedor usan la siguiente convención de nomenclatura:
insights-logs-{log category name}/resourceId=/SUBSCRIPTIONS/{subscription ID}/RESOURCEGROUPS/{resource group name}/PROVIDERS/{resource provider name}/{resource type}/{resource name}/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
El blob de un grupo de seguridad de red puede tener un nombre similar al siguiente:
insights-logs-networksecuritygrouprulecounter/resourceId=/SUBSCRIPTIONS/a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1/RESOURCEGROUPS/TESTRESOURCEGROUP/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUP/TESTNSG/y=2016/m=08/d=22/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 este formato. Se usa un esquema de nivel superior común, pero único para cada servicio de Azure, tal y como se describe en Esquema de los registros de recursos.
Nota:
Los registros se escriben en blobs en función de la hora en que se recibió el registro, independientemente de la hora en que se generó. Esto significa que un blob determinado puede contener datos de registro fuera de la hora especificada en la dirección URL del blob. Cuando un origen de datos, como Application Insights, admite la carga de datos de telemetría obsoleta, un blob puede contener datos de las 48 horas anteriores.
Al comienzo de una nueva hora, es posible que los registros existentes se sigan escribiendo en el blob de la hora anterior, mientras que los nuevos registros se escriben en el blob de la nueva hora.
{"time": "2016-07-01T00:00:37.2040000Z","systemId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1","category": "NetworkSecurityGroupRuleCounter","resourceId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/RESOURCEGROUPS/TESTRESOURCEGROUP/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/TESTNSG","operationName": "NetworkSecurityGroupCounters","properties": {"vnetResourceGuid": "{12345678-9012-3456-7890-123456789012}","subnetPrefix": "10.3.0.0/24","macAddress": "000123456789","ruleName": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/testresourcegroup/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/default-allow-rdp","direction": "In","type": "allow","matchedConnections": 1988}}
Integraciones de asociados de Azure Monitor
Los registros de recursos también se pueden enviar a soluciones de asociados que están totalmente integradas en Azure. Puede encontrar una lista de estas soluciones y detalles sobre cómo configurarlas en Integraciones de asociados de Azure Monitor.