Pozyskiwanie danych z usługi Spunk Universal Forwarder do usługi Azure Data Explorer

Ważne

Ten łącznik może być używany w analizie w czasie rzeczywistym w usłudze Microsoft Fabric. Skorzystaj z instrukcji opisanych w tym artykule z następującymi wyjątkami:

Splunk Universal Forwarder to uproszczona wersja oprogramowania Splunk Enterprise , która umożliwia pozyskiwanie danych z wielu źródeł jednocześnie. Jest ona przeznaczona do zbierania i przekazywania danych dziennika oraz danych maszyny z różnych źródeł do centralnego serwera Splunk Enterprise lub wdrożenia splunk Cloud. Splunk Universal Forwarder służy jako agent, który upraszcza proces zbierania i przekazywania danych, co czyni go istotnym składnikiem we wdrożeniu Splunk. Azure Data Explorer to szybka i wysoce skalowalna usługa eksploracji danych na potrzeby danych dziennika i telemetrycznych.

W tym artykule dowiesz się, jak za pomocą łącznika kusto Splunk Universal Forwarder wysyłać dane do tabeli w klastrze. Początkowo utworzysz tabelę i mapowanie danych, a następnie przekierowujesz splunk w celu wysłania danych do tabeli, a następnie zweryfikuj wyniki.

Wymagania wstępne

Tworzenie tabeli usługi Azure Data Explorer

Utwórz tabelę, aby odbierać dane z usługi Splunk Universal Forwarder, a następnie przyznaj jednostce usługi dostęp do tej tabeli.

W poniższych krokach utworzysz tabelę o nazwie SplunkUFLogs z jedną kolumną (RawText). Dzieje się tak, ponieważ usługa Splunk Universal Forwarder domyślnie wysyła dane w formacie nieprzetworzonym tekstowym. Następujące polecenia można uruchomić w edytorze zapytań internetowego interfejsu użytkownika.

  1. Utwórz tabelę:

    .create table SplunkUFLogs (RawText: string)
    
  2. Sprawdź, czy tabela SplunkUFLogs została utworzona i jest pusta:

    SplunkUFLogs
    | count
    
  3. Użyj jednostki usługi z sekcji Wymagania wstępne , aby udzielić uprawnień do pracy z bazą danych zawierającą tabelę.

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

Konfigurowanie usługi przesyłania dalej uniwersalnego splunk

Po pobraniu usługi Splunk Universal Forwarder zostanie otwarty kreator umożliwiający skonfigurowanie usługi przesyłania dalej.

  1. W kreatorze ustaw indeksator odbierający , aby wskazywał system hostowania łącznika kusto Splunk Universal Forwarder. Wprowadź 127.0.0.1 nazwę hosta lub adres IP i 9997 dla portu. Pozostaw indeksator docelowy pusty.

    Aby uzyskać więcej informacji, zobacz Włączanie odbiornika dla rozwiązania Splunk Enterprise.

  2. Przejdź do folderu, w którym zainstalowano usługę Spunk Universal Forwarder, a następnie do folderu /etc/system/local . Utwórz lub zmodyfikuj plik inputs.conf , aby umożliwić usłudze przesyłania dalej odczytywanie dzienników:

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

    Aby uzyskać więcej informacji, zobacz Monitorowanie plików i katalogów za pomocą pliku inputs.conf.

  3. Przejdź do folderu, w którym zainstalowano usługę Spunk Universal Forwarder, a następnie do folderu /etc/system/local . Utwórz lub zmodyfikuj plik outputs.conf , aby określić lokalizację docelową dzienników, która jest nazwą hosta i portem systemu hostowania łącznika usługi Universal Forwarder Kusto Splunk:

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

    Aby uzyskać więcej informacji, zobacz Konfigurowanie przekazywania za pomocą pliku outputs.conf.

  4. Uruchom ponownie uniwersalny usługę przesyłania dalej Splunk.

Konfigurowanie łącznika uniwersalnego Kusto Splunk

Aby skonfigurować łącznik uniwersalny Kusto Splunk do wysyłania dzienników do tabeli usługi Azure Data Explorer:

  1. Pobierz lub sklonuj łącznik z repozytorium GitHub.

  2. Przejdź do katalogu podstawowego łącznika:

    cd .\SplunkADXForwarder\
    
  3. Edytuj plik config.yml, aby zawierał następujące właściwości:

    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
    
    Pole Opis
    ingest_url Adres URL pozyskiwania dla klastra usługi Azure Data Explorer. Można go znaleźć w Azure Portal w obszarze Identyfikator URI pozyskiwania danych na karcie Przegląd klastra. Powinna ona mieć format https://ingest-<clusterName>.<region>.kusto.windows.net.
    client_id Identyfikator klienta rejestracji aplikacji Microsoft Entra utworzony w sekcji Wymagania wstępne.
    client_secret Klucz tajny klienta rejestracji aplikacji Microsoft Entra utworzony w sekcji Wymagania wstępne.
    authority Identyfikator dzierżawy, która zawiera rejestrację aplikacji Microsoft Entra utworzoną w sekcji Wymagania wstępne.
    database_name Nazwa bazy danych usługi Azure Data Explorer.
    table_name Nazwa tabeli docelowej usługi Azure Data Explorer.
    table_mapping_name Nazwa mapowania danych pozyskiwania dla tabeli. Jeśli nie masz mapowania, możesz pominąć tę właściwość z pliku konfiguracji. Zawsze możesz analizować dane w różnych kolumnach później.
    data_format Oczekiwany format danych dla danych przychodzących. Dane przychodzące są w formacie nieprzetworzonym, dlatego zalecany format to csv, który domyślnie mapuje nieprzetworzonego tekstu na indeks zerowy.
  4. Skompiluj obraz platformy Docker:

    docker build -t splunk-forwarder-listener
    
  5. Uruchom kontener platformy Docker:

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

Sprawdź, czy dane są pozyskiwane do usługi Azure Data Explorer

Po uruchomieniu platformy Docker dane są wysyłane do tabeli azure Data Explorer. Możesz sprawdzić, czy dane są pozyskiwane, uruchamiając zapytanie w edytorze zapytań internetowego interfejsu użytkownika.

  1. Uruchom następujące zapytanie, aby sprawdzić, czy dane są pozyskiwane do tabeli:

    SplunkUFLogs
    | count
    
  2. Uruchom następujące zapytanie, aby wyświetlić dane:

    SplunkUFLogs
    | take 100