Envoyez des logs Azure Event Hubs vers Observability Pipelines

Ce produit n'est pas pris en charge par le site Datadog que vous avez sélectionné. ().

Présentation

Ce document explique comment envoyer des logs Azure Event Hubs vers Observability Pipelines en utilisant la source Kafka. Les étapes de configuration incluent la configuration d’Azure Event Hubs pour la source Kafka :

Une fois Azure Event Hubs configuré, vous configurez un pipeline avec la source Kafka pour envoyer les logs Azure Event Hubs vers Observability Pipelines.

Configurez Azure Event Hubs pour la source Kafka

Créez un espace de noms Azure Event Hubs

  1. Dans le portail Azure, accédez à Event Hubs.
  2. Cliquez sur Créer.
  3. Remplissez les Détails du projet (abonnement, groupe de ressources) et les Détails de l’instance (nom de l’espace de noms, région, sélectionnez le niveau Standard, Premium ou Dédié).
  4. Assurez-vous que la région correspond à vos ressources Azure (par exemple, westus).
  5. Cliquez sur Vérifier + créer.

Remarque : L’endpoint Kafka est automatiquement activé pour les niveaux standard et supérieurs.

Créez un Event Hub (topic Kafka)

  1. Dans l’espace de noms que vous avez créé, sélectionnez Event Hubs et cliquez sur + Event Hub.
  2. Entrez un nom (par exemple, datadog-topic) et configurez les paramètres (par exemple, 4 partitions et une durée de rétention de 7 jours).
  3. Cliquez sur Vérifier + créer. Cet Event Hub agit comme un topic Kafka.

Configurez la stratégie d’accès partagé

  1. Dans l’Event Hub que vous avez créé, accédez à Paramètres > Stratégies d’accès partagé.
  2. Cliquez sur + Ajouter.
  3. Entrez un nom de stratégie (par exemple, DatadogKafkaPolicy).
  4. Cochez la case Gérer, ce qui devrait automatiquement cocher les cases Envoyer et Écouter.
  5. Cliquez sur Créer.
  6. La Clé primaire et la Chaîne de connexion principale sont nécessaires pour l’authentification Kafka lorsque vous configurez la source Kafka d’Observability Pipelines.

Configurez les paramètres de diagnostic

  1. Configurez les ressources Azure (par exemple, des machines virtuelles, des services d’application) ou les logs d’activité au niveau de l’abonnement pour diffuser les logs vers l’Event Hub.
  2. Pour les ressources :
    1. Accédez à la ressource, puis à Surveillance > Paramètres de diagnostic.
    2. Cliquez sur + Ajouter un paramètre de diagnostic.
    3. Sélectionnez les catégories de logs souhaitées (par exemple, AuditLogs, SignInLogs pour Microsoft Entra ID).
    4. Dans Détails de la destination :
      1. Cochez la case Diffuser vers un Event Hub.
      2. Sélectionnez l’espace de noms et l’Event Hub (datadog-topic).
    5. Cliquez sur Enregistrer.
  3. Pour les logs d’activité :
    1. Accédez à Microsoft Entra ID > Surveillance > Journaux d’audit > Paramètres d’exportation des données.
    2. Cochez la case Diffuser vers l’Event Hub.
  4. Répétez l’opération pour chaque région. Les logs doivent être diffusés vers des Event Hubs situés dans la même région.

Configurez une connexion compatible Kafka pour l’Event Hub

Azure Event Hubs expose un endpoint Kafka à NAMESPACE.servicebus.windows.net:9093, qu’Observability Pipelines utilise comme source Kafka.

Obtenez l’endpoint Kafka

  1. Dans le portail Azure, accédez à votre espace de noms Event Hubs (par exemple, myeventhubns).
  2. Sur la page Vue d’ensemble, sous la section Essentials, localisez le Nom d’host ou le Nom de domaine complet (FQDN). Il se présente sous le format : <NAMESPACE>.servicebus.windows.net (par exemple, myeventhubns.servicebus.windows.net).
  3. Ajoutez le port Kafka :9093 pour former la valeur des Bootstrap Servers : <NAMESPACE>.servicebus.windows.net:9093
    • Par exemple, si votre espace de noms est myeventhubns, le Bootstrap Servers est myeventhubns.servicebus.windows.net:9093.
    • Vous aurez besoin de ces informations lors de la configuration de la source Kafka d’Observability Pipelines.

Configurez l’authentification

  1. Azure Event Hubs utilise SASL_SSL avec le mécanisme PLAIN pour l’authentification Kafka.
  2. La chaîne de connexion est formatée pour Observability Pipelines :
    Username: $$ConnectionString
    Password: Endpoint=sb://<NAMESPACE>.servicebus.windows.net/;SharedAccessKeyName=<PolicyName>;SharedAccessKey=<Key>
    

Mettez en place un pipeline avec la source Kafka

Sélectionnez votre plateforme.

  1. Accédez à Observability Pipelines.

  2. Sélectionnez la source Kafka.

    1. Dans le champ Group ID, spécifiez ou créez un groupe de consommateurs unique (par exemple, datadog-consumer-group).
    2. Dans le Topics champ, saisissez datadog-topic ou le topic que vous avez configuré précédemment pour votre Event Hub.
    3. Activez le commutateur pour autoriser l’authentification SASL.
    4. Dans le menu déroulant Mechanism, sélectionnez PLAIN.
    5. Activez TLS.
      1. Configurez votre fichier values.yaml pour utiliser le certificat qui fonctionne dans le cadre de l’image de conteneur :
        initContainers:
        - name: copy-config
        image: gcr.io/datadoghq/observability-pipelines-worker:latest
        imagePullPolicy: IfNotPresent
        command: ['/bin/sh', '-c', 'mkdir -p /config-volume/observability-pipelines-worker/config/ && cp /etc/ssl/certs/ca-certificates.crt /config-volume/observability-pipelines-worker/config/ca-certificates.crt']
        volumeMounts:
        - name: config-volume
            mountPath: /config-volume
        extraVolumes:
        - name: config-volume
        emptyDir: {}
        extraVolumeMounts:
        - name: config-volume
        mountPath: /config-volume
        
        Note: When install the Worker with the install command you need to add:
        --set env[0].name=DD_OP_DATA_DIR,env[0].value='/config-volume/observability-pipelines-worker/'
        
      Dans le 1. In the Certificate path champ, saisissez /ca-certificates.crt si vous avez utilisé l’exemple ci-dessus. Sinon, saisissez le nom de votre certificat.
    Les paramètres de la source Kafka avec des exemples de valeurs
  3. Cliquez sur Next: Select Destination.

  4. Une fois vos destinations et processeurs configurés, cliquez sur Next: Install.

  5. Sélectionnez votre plateforme dans le menu déroulant Choose your installation platform.

  6. Saisissez les variables d’environnement pour votre source Kafka :

    1. Pour Kafka Bootstrap Servers, saisissez <NAMESPACE>.servicebus.windows.net:9093 (par exemple, myeventhubns.servicebus.windows.net:9093).
    2. Pour Kafka SASL Username, saisissez $$$$ConnectionString. Remarque : Vous devez avoir $$$$ devant ConnectionString car $$$$ finit par être $$ lorsqu’il est transposé dans l’environnement.
    3. Pour Kafka SASL Password, saisissez la chaîne de connexion complète. Par exemple, Endpoint=sb://<NAMESPACE>.servicebus.windows.net/;SharedAccessKeyName=<PolicyName>;SharedAccessKey=<Key>.
    4. Saisissez votre phrase secrète TLS Kafka.
    La page d'installation avec des exemples de valeurs pour les variables d'environnement Kafka
  7. Saisissez les variables d’environnement pour vos destinations, le cas échéant.

  8. Suivez le reste des instructions sur la page pour installer le Worker en fonction de votre plateforme.

  1. Accédez à Observability Pipelines.

  2. Sélectionnez la source Kafka.

    1. Dans le champ Group ID, spécifiez ou créez un groupe de consommateurs unique (par exemple, datadog-consumer-group).
    2. Saisissez datadog-topic dans le champ Topics.
    3. Activez le commutateur pour autoriser l’authentification SASL.
    4. Dans le menu déroulant Mechanism, sélectionnez PLAIN.
    5. Activez TLS. Pour le certificat, copiez le certificat depuis son emplacement d’origine vers le répertoire de configuration de données par défaut d’Observability Pipelines :
      1. Comme l’Observability Pipelines Worker n’a pas encore été installé, exécutez cette commande pour créer le répertoire du certificat :
        sudo mkdir -p /var/lib/observability-pipelines-worker/config
        
      2. Run this command to copy the certificate to the directory you created:
        sudo cp /etc/ssl/certs/ca-certificates.crt /var/lib/observability-pipelines-worker/config/
        
      3. In the Certificate path champ, saisissez /ca-certificates.crt.
    Les paramètres de la source Kafka avec des exemples de valeurs
  3. Cliquez sur Next: Select Destination.

  4. Une fois vos destinations et processeurs configurés, cliquez sur Next: Install.

  5. Sélectionnez votre plateforme dans le menu déroulant Choose your installation platform.

  6. Saisissez les variables d’environnement pour votre source Kafka :

    1. Pour Kafka Bootstrap Servers, saisissez <NAMESPACE>.servicebus.windows.net:9093 (par exemple, myeventhubns.servicebus.windows.net:9093).
    2. Pour Kafka SASL Username, saisissez \$\$ConnectionString. Remarque : Vous devez échapper le $ devant ConnectionString, sinon la variable d’environnement ne sera pas chargée.
    3. Pour Kafka SASL Password, saisissez la chaîne de connexion complète entre guillemets ("). Par exemple, "Endpoint=sb://<NAMESPACE>.servicebus.windows.net/;SharedAccessKeyName=<PolicyName>;SharedAccessKey=<Key>".
    4. Saisissez votre phrase secrète TLS Kafka.
    La page d'installation avec des exemples de valeurs pour les variables d'environnement Kafka

Dépannage

Si vous rencontrez des problèmes après l’installation du Worker, vérifiez votre fichier d’environnement Observability Pipelines (/etc/default/observability-pipelines-worker) pour vous assurer que les variables d’environnement sont correctement définies :

  • DD_OP_SOURCE_KAFKA_SASL_USERNAME="$$ConnectionString"
  • DD_OP_SOURCE_KAFKA_BOOTSTRAP_SERVERS=<NAMESPACE>.servicebus.windows.net:9093
  • DD_OP_SOURCE_KAFKA_SASL_PASSWORD=<Endpoint=sb://<NAMESPACE>.servicebus.windows.net/;SharedAccessKeyName=<PolicyName>;SharedAccessKey=<Key>>
  • DD_OP_SOURCE_KAFKA_KEY_PASS=password

Variable d’environnement manquante

Si vous voyez l’erreur Missing environment variable DD_OP_SOURCE_KAFKA_SASL_PASSWORD et que vous exécutez le Worker dans une VM, assurez-vous que la variable est entre guillemets (") lorsque vous exécutez le script d’installation du Worker. Exemple :

DD_OP_SOURCE_KAFKA_SASL_PASSWORD=`"Endpoint=sb://<NAMESPACE>.servicebus.windows.net/;SharedAccessKeyName=<PolicyName>;SharedAccessKey=<Key>"`

Métriques de santé

Pour les métriques de composant et les métriques de tampon source émises par toutes les sources, consultez la documentation Pipelines Usage Metrics. Puisque vous utilisez la source Kafka pour envoyer des logs d’Azure Event Hubs vers Observability Pipelines, utilisez le tag component_type:kafka pour filtrer les métriques pertinentes.