Udostępnij za pośrednictwem


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 czasu rzeczywistego w usłudze Microsoft Fabric. Skorzystaj z instrukcji w tym artykule z następującymi wyjątkami:

Splunk Universal Forwarder to uproszczona wersja oprogramowania Splunk Enterprise , które umożliwia pozyskiwanie danych z wielu źródeł jednocześnie. Jest ona przeznaczona do zbierania i przekazywania danych dziennika i danych maszyny z różnych źródeł do centralnego serwera Splunk Enterprise lub wdrożenia rozwiązania Splunk Cloud. Splunk Universal Forwarder służy jako agent, który upraszcza proces zbierania i przesyłania dalej danych, dzięki czemu jest to niezbędny składnik we wdrożeniu Splunk. Azure Data Explorer to szybka i wysoce skalowalna usługa eksploracji danych na potrzeby danych dziennika i telemetrycznych.

Z tego artykułu 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ę do odbierania danych 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 Spunk Universal Forwarder domyślnie wysyła dane w formacie nieprzetworzonym tekstu. 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 uniwersalnego przesyłania dalej Splunk

Po pobraniu usługi Spunk Universal Forwarder zostanie otwarty kreator konfigurowania 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 jako port. 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, czyli nazwę hosta i port 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 usługę Spunk Universal Forwarder.

Konfigurowanie łącznika uniwersalnego kusto splunk

Aby skonfigurować łącznik uniwersalny kusto Splunk w celu 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 config.yml, aby zawierała 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 klastra usługi Azure Data Explorer. Możesz go znaleźć w witrynie 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 Wpis tajny klienta rejestracji aplikacji Microsoft Entra utworzony w sekcji Wymagania wstępne .
    authority Identyfikator dzierżawy, która przechowuje rejestrację aplikacji Firmy 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. Dane można zawsze analizować w różnych kolumnach później.
    data_format Oczekiwany format danych dla danych przychodzących. Dane przychodzące są w formacie nieprzetworzonym tekstu, więc zalecanym formatem jest 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 usługi 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