Transmettre en continu des données de surveillance Azure à un Event Hub ou à un partenaire externe

Dans la plupart des cas, la méthode la plus efficace pour transmettre des données d’Azure Monitor à des outils externes consiste à utiliser Azure Event Hubs. Cet article fournit une brève description de comment suivre les données, puis répertorie certains des partenaires à qui vous pouvez les envoyer. Certains partenaires bénéficient d’une intégration spéciale à Azure Monitor et peuvent être hébergés sur Azure.

Créer un espace de noms Event Hubs

Avant de configurer le streaming pour une source de données, vous avez besoin de créer un espace de noms Event Hubs et un hub d’événements. Cet espace de noms et ce hub d’événements constituent la destination de toutes vos données de surveillance. Un espace de noms Event Hubs est un regroupement logique de hubs d’événements qui partagent une même stratégie d’accès, tout comme un compte de stockage contient des objets blob. Prenez en compte les informations suivantes sur l’espace de noms Event hubs et les hubs d’événements que vous utilisez pour le streaming des données de supervision :

  • Le nombre d’unités de débit vous permet d’augmenter l’échelle de débit de vos hubs d’événements. En règle générale, une seule unité de débit est nécessaire. Si vous avez besoin de plus pour répondre à l’augmentation de l’utilisation de votre journal, vous pouvez augmenter manuellement le nombre d’unités de débit pour l’espace de noms ou activer l’inflation automatique.
  • Le nombre de partitions vous permet de paralléliser la consommation sur un grand nombre de consommateurs. Une seule partition peut prendre en charge jusqu’à 20 Mbits/s, soit environ 20 000 messages par seconde. En fonction de l’outil qui consomme les données, la consommation simultanée de plusieurs partitions risque de ne pas être prise en charge. Si vous n’êtes pas certain du nombre de partitions à définir, il est raisonnable de commencer avec quatre partitions.
  • Vous définissez la conservation des messages sur votre hub d’événements sur au moins 7 jours. Si l’outil consommateur est en panne pendant plus d’un jour, cela garantit qu’il pourra reprendre là où il s’est arrêté pour les événements des 7 derniers jours.
  • Il est recommandé d’utiliser le groupe de consommateurs par défaut pour votre hub d’événements. Il n’est pas nécessaire de créer d’autres groupes de consommateurs ou d’utiliser un groupe de consommateurs distinct, sauf si deux outils doivent utiliser les mêmes données d’un même hub d’événements.
  • Pour le journal d’activité Azure, vous pouvez choisir un espace de noms Event Hubs afin qu’Azure Monitor y crée un hub d’événements appelé insights-logs-operational-logs. Pour les autres types de journaux, vous pouvez soit choisir un hub d’événements existant, soit demander à Azure Monitor de créer un hub d’événements par catégorie de journal.
  • En règle générale, les ports de sortie 5671 et 5672 doivent être ouverts sur l’ordinateur ou le réseau virtuel qui consomme les données du hub d’événements.

Données de supervision disponibles

Les sources de données de surveillance pour Azure Monitor et leurs méthodes de collecte de données décrit les différents types de données collectées par Azure Monitor et les méthodes utilisées pour les collecter. Consultez cet article pour ces données qui peuvent être diffusées en continu vers un hub d’événements et des liens vers des détails de configuration.

Envoyer en streaming des données de diagnostic

Utilisez le paramétrage des diagnostics pour diffuser en continu journaux et métriques vers Event Hubs. Pour plus d’informations sur la configuration des paramètres de diagnostic, consultez Créer des paramètres de diagnostic.

Le code JSON suivant est un exemple de données de métriques envoyées à un hub d’événements :

[
  {
    "records": [
      {
        "count": 2,
        "total": 0.217,
        "minimum": 0.042,
        "maximum": 0.175,
        "average": 0.1085,
        "resourceId": "/SUBSCRIPTIONS/ABCDEF12-3456-78AB-CD12-34567890ABCD/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/ABCDEF12-3456-78AB-CD12-34567890ABCD/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/ABCDEF12-3456-78AB-CD12-34567890ABCD/RESOURCEGROUPS/RG-001/PROVIDERS/MICROSOFT.WEB/SITES/SCALEABLEWEBAPP1",
        "time": "2023-04-18T09:03:00.0000000Z",
        "metricName": "Requests",
        "timeGrain": "PT1M"
      },
    ...
    ]
  }
]

Le code JSON suivant est un exemple de données de journaux envoyées à un hub d’événements :

[
  {
    "records": [
      {
        "time": "2023-04-18T09:39:56.5027358Z",
        "category": "AuditEvent",
        "operationName": "VaultGet",
        "resultType": "Success",
        "correlationId": "12345678-abc-4bc5-9f31-950eaf3bfcb4",
        "callerIpAddress": "10.0.0.10",
        "identity": {
          "claim": {
            "http://schemas.microsoft.com/identity/claims/objectidentifier": "123abc12-abcd-9876-cdef-123abc456def",
            "appid": "12345678-a1a1-b2b2-c3c3-9876543210ab"
          }
        },
        "properties": {
          "id": "https://mykeyvault.vault.azure.net/",
          "clientInfo": "AzureResourceGraph.IngestionWorkerService.global/1.23.1.224",
          "requestUri": "https://northeurope.management.azure.com/subscriptions/ABCDEF12-3456-78AB-CD12-34567890ABCD/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": "12345678-abcd-1234-abcd-1234567890ab",
            "networkAcls": null,
            "enabledForDeployment": 0,
            "enabledForDiskEncryption": 0,
            "enabledForTemplateDeployment": 0,
            "enableSoftDelete": 1,
            "softDeleteRetentionInDays": 90,
            "enableRbacAuthorization": 0,
            "enablePurgeProtection": null
          }
        },
        "resourceId": "/SUBSCRIPTIONS/ABCDEF12-3456-78AB-CD12-34567890ABCD/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"
  },
...

Streaming manuel avec une application logique

Vous pouvez écrire dans le stockage Azure les données que vous ne pouvez pas envoyer directement vers un hub d’événements, puis utiliser une application logique déclenchée sur des critères d’heure qui tire (pull) les données du Stockage Blob Azure et les envoie (push) en tant que message à un hub d’événements.

Outils partenaires avec intégration à Azure Monitor

Le routage de vos données de supervision vers un hub d’événements avec Azure Monitor vous permet d’intégrer facilement des systèmes SIEM et des outils de supervision. Le tableau suivant répertorie des exemples d’outils avec l’intégration d’Azure Monitor.

Outil Hébergé dans Azure Description
IBM QRadar Non Le module DSM Microsoft Azure et Microsoft Azure Event Hubs Protocol sont disponibles pour téléchargement sur le site web du support technique d’IBM.
Splunk Non Le module complémentaire Splunk pour Microsoft Cloud Services est un projet open source disponible dans Splunkbase.

Si vous ne pouvez pas installer de module complémentaire dans votre instance Splunk et si vous utilisez un proxy ou exécutez sur un cloud Splunk, vous pouvez transférer ces événements au collecteur d’événements HTTP Splunk en utilisant Azure Function pour Splunk. Cet outil se déclenche lors des nouveaux messages dans le hub d’événements.
sumologic Non Les instructions de configuration de SumoLogic pour consommer les données d’un hub d’événements sont disponibles dans Collecter des journaux pour une application d’audit Azure à partir d’Event Hubs.
ArcSight Non Le connecteur intelligent ArcSight d’Azure Event Hubs est disponible dans la collection de connecteurs intelligents ArcSight.
Serveur syslog Non Si vous voulez envoyer en streaming des données Azure Monitor directement vers un serveur Syslog, vous pouvez utiliser une solution basée sur une fonction Azure.
LogRhythm Non Les instructions permettant de configurer LogRhythm pour collecter les journaux à partir d’un Event Hub sont disponibles sur ce site web LogRhythm.
Logz.io Oui Pour plus d’informations, consultez Bien démarrer avec la supervision et la journalisation en utilisant Logz.io pour les applications Java exécutées sur Azure.

Étapes suivantes