Compartir vía


Transmisión de datos de supervisión de Azure a un centro de eventos y asociado externo

Un método eficaz para transmitir datos de Azure Monitor a herramientas externas es mediante Azure Event Hubs. En este artículo se proporciona una descripción de cómo transmitir datos a Event Hubs y enumera algunos de los asociados que pueden consumir esos datos desde el centro. Algunos asociados se integran con Azure Monitor y tienen servicios hospedados en Azure.

Creación de un espacio de nombres de Event Hubs

Antes de configurar el streaming para un origen de datos, debe crear un espacio de nombres de Event Hubs y un centro de eventos. Estos centro de eventos y espacio de nombres son el destino de todos los datos de supervisión. Un espacio de nombres de Event Hubs es una agrupación lógica de centros de eventos que comparten la misma directiva de acceso, al igual que una cuenta de almacenamiento tiene contenedores individuales para blobs dentro de la cuenta de almacenamiento. Tenga en cuenta los siguientes detalles sobre el espacio de nombres de Event Hubs y los centros de eventos que use para transmitir los datos de supervisión:

  • El número de unidades de rendimiento permite aumentar la escala de rendimiento para los centros de eventos. Solo se necesita una unidad de procesamiento normalmente. Si necesita escalar verticalmente a medida que el uso del registro aumenta, siempre puede aumentar manualmente el número de unidades de procesamiento del espacio de nombres o habilitar la inflación automática.
  • El número de particiones permite paralelizar el consumo entre muchos consumidores. Una sola partición puede admitir hasta 20 MBps o, aproximadamente, 20 000 mensajes por segundo. Dependiendo de la herramienta que consume los datos, puede admitir o no el consumo de varias particiones. Es razonable comenzar con cuatro particiones si no está seguro de la cantidad de particiones que debe configurar.
  • Establezca la retención de mensajes en el centro de eventos en al menos siete días. Si la herramienta de consumo deja de funcionar durante más de un día, esta retención garantiza que dicha herramienta pueda continuar desde donde se quedó (en cuanto a los eventos de hasta siete días de antigüedad).
  • Use el grupo de consumidores predeterminado para el centro de eventos. No es necesario para crear otros grupos de consumidores o usar un grupo de consumidores independientes a menos que piense disponer de dos herramientas diferentes que consuman los mismos datos del mismo centro de eventos.
  • Para el registro de actividad de Azure, al seleccionar un espacio de nombres de Event Hubs, Azure Monitor crea un centro de eventos dentro de ese espacio de nombres denominado insights-logs-operational-logs. Para otros tipos de registro, puede elegir un centro de eventos existente o hacer que Azure Monitor cree un centro de eventos en función de la categoría de registro.
  • El puerto de salida 5671 y 5672 se debe abrir en la máquina o red virtual que consume datos del centro de eventos.

Métodos de streaming

Los datos se pueden enviar a Event Hubs mediante los métodos siguientes en Azure Monitor:

Formatos de datos

El siguiente JSON es un ejemplo de datos de métricas enviados a un centro de eventos:

[
  {
    "records": [
      {
        "count": 2,
        "total": 0.217,
        "minimum": 0.042,
        "maximum": 0.175,
        "average": 0.1085,
        "resourceId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/RESOURCEGROUPS/RG-001/PROVIDERS/MICROSOFT.WEB/SITES/SCALEABLEWEBAPP1",
        "time": "2023-04-18T09:03:00.0000000Z",
        "metricName": "CpuTime",
        "timeGrain": "PT1M"
      },
      {
        "count": 2,
        "total": 0.284,
        "minimum": 0.053,
        "maximum": 0.231,
        "average": 0.142,
        "resourceId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/RESOURCEGROUPS/RG-001/PROVIDERS/MICROSOFT.WEB/SITES/SCALEABLEWEBAPP1",
        "time": "2023-04-18T09:04:00.0000000Z",
        "metricName": "CpuTime",
        "timeGrain": "PT1M"
      },
      {
        "count": 1,
        "total": 1,
        "minimum": 1,
        "maximum": 1,
        "average": 1,
        "resourceId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/RESOURCEGROUPS/RG-001/PROVIDERS/MICROSOFT.WEB/SITES/SCALEABLEWEBAPP1",
        "time": "2023-04-18T09:03:00.0000000Z",
        "metricName": "Requests",
        "timeGrain": "PT1M"
      },
    ...
    ]
  }
]

El siguiente JSON es un ejemplo de datos de registro enviados a un centro de eventos:

[
  {
    "records": [
      {
        "time": "2023-04-18T09:39:56.5027358Z",
        "category": "AuditEvent",
        "operationName": "VaultGet",
        "resultType": "Success",
        "correlationId": "cccc2222-dd33-4444-55ee-666666ffffff",
        "callerIpAddress": "10.0.0.10",
        "identity": {
          "claim": {
            "http://schemas.microsoft.com/identity/claims/objectidentifier": "dddddddd-3333-4444-5555-eeeeeeeeeeee",
            "appid": "44445555-eeee-6666-ffff-7777aaaa8888"
          }
        },
        "properties": {
          "id": "https://mykeyvault.vault.azure.net/",
          "clientInfo": "AzureResourceGraph.IngestionWorkerService.global/1.23.1.224",
          "requestUri": "https://northeurope.management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rg-001/providers/Microsoft.KeyVault/vaults/mykeyvault?api-version=2023-02-01&MaskCMKEnabledProperties=true",
          "httpStatusCode": 200,
          "properties": {
            "sku": {
              "Family": "A",
              "Name": "Standard",
              "Capacity": null
            },
            "tenantId": "bbbbcccc-1111-dddd-2222-eeee3333ffff",
            "networkAcls": null,
            "enabledForDeployment": 0,
            "enabledForDiskEncryption": 0,
            "enabledForTemplateDeployment": 0,
            "enableSoftDelete": 1,
            "softDeleteRetentionInDays": 90,
            "enableRbacAuthorization": 0,
            "enablePurgeProtection": null
          }
        },
        "resourceId": "/SUBSCRIPTIONS/AAAA0A0A-BB1B-CC2C-DD3D-EEEEEE4E4E4E/RESOURCEGROUPS/RG-001/PROVIDERS/MICROSOFT.KEYVAULT/VAULTS/mykeyvault",
        "operationVersion": "2023-02-01",
        "resultSignature": "OK",
        "durationMs": "16"
      }
    ],
    "EventProcessedUtcTime": "2023-04-18T09:42:07.0944007Z",
    "PartitionId": 1,
    "EventEnqueuedUtcTime": "2023-04-18T09:41:14.9410000Z"
  },
...

Herramientas de asociados con la integración de Azure Monitor

El enrutamiento de los datos de supervisión a un centro de eventos con Azure Monitor facilita la integración con las herramientas externas de SIEM y de supervisión. En la siguiente tabla se enumeran ejemplos de herramientas que se integran con Azure Monitor.

Herramienta Hospedado en Azure Descripción
IBM QRadar No Los protocolos de Microsoft Azure DSM y Microsoft Azure Event Hubs se pueden descargar en el sitio web de soporte técnico de IBM.
Splunk No Splunk Add-on for Microsoft Cloud Services es un proyecto de código abierto disponible en Splunkbase.

Si no puede instalar un complemento en la instancia de Splunk y usa un proxy o se ejecuta en Splunk Cloud, puede reenviar estos eventos al recopilador de eventos HTTP de Splunk mediante laFunción de Azure para Splunk. Esta herramienta se desencadena cuando llegan nuevos mensajes al centro de eventos.
sumologic No Las instrucciones para configurar SumoLogic para consumir datos de un centro de eventos están disponibles en Recopilación de registros para la aplicación de auditoría de Azure desde Event Hubs.
ArcSight No El conector inteligente de Azure Event Hubs de ArcSight está disponible como parte de esta colección de conectores inteligentes de ArcSight.
Servidor de Syslog No Si quiere transmitir datos de Azure Monitor directamente a un servidor de Syslog, puede usar una solución basada en una función de Azure.
LogRhythm No Las instrucciones para configurar LogRhythm con el fin de recopilar registros de un centro de eventos están disponibles en este sitio web de LogRhythm.
Logz.io Para obtener más información, consulte Tutorial: Introducción a la supervisión y el registro con Logz.io para aplicaciones de Java que se ejecutan en Azure.

Pasos siguientes