Partage via


Ingérer des données de Splunk Universal Forwarder vers Azure Data Explorer

Important

Ce connecteur peut être utilisé dans Real-Time Intelligence dans Microsoft Fabric. Utilisez les instructions contenues dans cet article avec les exceptions suivantes :

Splunk Universal Forwarder est une version allégée du logiciel Splunk Enterprise qui vous permet d’ingérer des données de nombreuses sources simultanément. Elle est conçue pour collecter et transférer des données de journal et des données de machine à partir de différentes sources vers un serveur Splunk Enterprise central ou un déploiement Splunk Cloud. Splunk Universal Forwarder sert d’agent qui simplifie le processus de collecte et de transfert de données, ce qui en fait un composant essentiel dans un déploiement Splunk. L’Explorateur de données Azure est un service d’exploration de données rapide et hautement évolutive pour les données des journaux et les données de télémétrie.

Dans cet article, vous allez découvrir comment utiliser le connecteur Kusto Splunk Universal Forwarder pour envoyer des données vers une table de votre cluster. Vous créez initialement une table et un mappage de données, vous demandez à Splunk d’envoyer des données dans la table, puis vous validez les résultats.

Prérequis

Créer une table Azure Data Explorer

Créez une table pour recevoir les données de Splunk Universal Forwarder, puis accordez au principal de service l’accès à cette table.

Lors des étapes suivantes, vous allez créer une table nommée SplunkUFLogs avec une colonne unique (RawText). Cela est dû au fait que Splunk Universal Forwarder envoie des données dans un format de texte brut par défaut. Les commandes suivantes peuvent être exécutées dans l’éditeur de requête de l’interface utilisateur web.

  1. Créer une table :

    .create table SplunkUFLogs (RawText: string)
    
  2. Vérifiez que la table SplunkUFLogs a été créée, et qu’elle est vide :

    SplunkUFLogs
    | count
    
  3. Utilisez le principal de service des Prérequis pour accorder l’autorisation d’utiliser la base de données contenant votre table.

    .add database YOUR_DATABASE_NAME admins ('aadapp=YOUR_APP_ID;YOUR_TENANT_ID') 'Entra service principal: Splunk UF'
    

Configurer Splunk Universal Forwarder

Lorsque vous téléchargez Splunk Universal Forwarder, un Assistant s’ouvre pour configurer le redirecteur.

  1. Dans l’Assistant, définissez l’indexeur de réception pour qu’il pointe vers le système hébergeant le connecteur Kusto Splunk Universal Forwarder. Entrez 127.0.0.1 comme nom d’hôte ou adresse IP et 9997 comme port. Laissez l’indexeur de destination vierge.

    Pour plus d’informations, consultez Activer un récepteur pour Splunk Enterprise.

  2. Accédez au dossier où Splunk Universal Forwarder est installé, puis au dossier /etc/system/local. Créez ou modifiez le fichier inputs.conf pour permettre au redirecteur de lire les journaux :

    [default]
    index = default
    disabled = false
    
    [monitor://C:\Program Files\Splunk\var\log\splunk\modinput_eventgen.log*]
    sourcetype = modinput_eventgen
    

    Pour plus d’informations, consultez Surveiller les fichiers et répertoires avec inputs.conf.

  3. Accédez au dossier où Splunk Universal Forwarder est installé, puis au dossier /etc/system/local. Créez ou modifiez le fichier outputs.conf pour déterminer l’emplacement de destination des journaux, qui est le nom d’hôte et le port du système hébergeant le connecteur Kusto Splunk Universal Forwarder :

    [tcpout]
    defaultGroup = default-autolb-group
    sendCookedData = false
    
    [tcpout:default-autolb-group]
    server = 127.0.0.1:9997
    
    [tcpout-server://127.0.0.1:9997]
    

    Pour plus d’informations, consultez Configurer le transfert avec outputs.conf.

  4. Redémarrez Splunk Universal Forwarder.

Configurer le connecteur Kusto Splunk Universal

Pour configurer le connecteur Kusto Splunk Universal de façon à envoyer des journaux à votre table Azure Data Explorer :

  1. Téléchargez ou clonez le connecteur à partir du dépôt GitHub.

  2. Accédez au répertoire de base du connecteur :

    cd .\SplunkADXForwarder\
    
  3. Modifiez le fichier config.yml afin qu’il contienne les propriétés suivantes :

    ingest_url: <ingest_url>
    client_id: <ms_entra_app_client_id>
    client_secret: <ms_entra_app_client_secret>
    authority: <ms_entra_authority>
    database_name: <database_name>
    table_name: <table_name>
    table_mapping_name: <table_mapping_name>
    data_format: csv
    
    Champ Description
    ingest_url URL d’ingestion pour votre cluster Azure Data Explorer. Vous la trouverez dans le portail Azure sous URI d’ingestion de données sous l’onglet Vue d’ensemble de votre cluster. Il doit respecter le format https://ingest-<clusterName>.<region>.kusto.windows.net.
    client_id ID client de votre inscription d’application Microsoft Entra créée dans la section Prérequis.
    client_secret Clé secrète client de votre inscription d’application Microsoft Entra créée dans la section Prérequis.
    authority ID du locataire qui contient votre inscription d’application Microsoft Entra créée dans la section Prérequis.
    database_name Nom de votre base de données Azure Data Explorer.
    table_name Nom de votre table de destination Azure Data Explorer.
    table_mapping_name Nom du mappage des données d’ingestion pour votre table. Si vous n’avez pas de mappage, vous pouvez omettre cette propriété du fichier de configuration. Vous pouvez toujours analyser des données dans différentes colonnes ultérieurement.
    data_format Format de données attendu des données entrantes. Les données entrantes sont au format de texte brut. Par conséquent, le format recommandé est csv, qui mappe le texte brut à l’index zéro par défaut.
  4. Créez l’image Docker :

    docker build -t splunk-forwarder-listener
    
  5. Exécutez le conteneur Docker :

    docker run -p 9997:9997 splunk-forwarder-listener
    

Vérifier que les données sont ingérées dans Azure Data Explorer

Une fois le Docker en cours d’exécution, les données sont envoyées vers votre table Azure Data Explorer. Vous pouvez vérifier que les données sont ingérées en exécutant une requête dans l’éditeur de requête de l’interface utilisateur web.

  1. Exécutez la requête suivante pour vérifier que les données sont ingérées dans la table :

    SplunkUFLogs
    | count
    
  2. Exécutez la requête suivante pour afficher les données :

    SplunkUFLogs
    | take 100