共用方式為


將數據從 Splunk 通用轉寄站內嵌至 Azure 數據總管

重要

此連接器可用於 Microsoft Fabric 中的即時智慧 。 使用本文中的指示,但有下列例外狀況:

Splunk 通用轉寄站是 Splunk Enterprise 軟體的輕量版,可讓您同時內嵌許多來源的數據。 其設計目的是從各種來源收集記錄數據和機器數據,並將其轉送至中央Splunk Enterprise伺服器或Splunk Cloud部署。 Splunk 通用轉寄站可作為可簡化數據收集和轉送程式的代理程式,使其成為 Splunk 部署中不可或缺的元件。 Azure 資料總管是一項快速且可高度調整的資料探索服務,可用於處理記錄和遙測資料。

在本文中,瞭解如何使用 Kusto Splunk 通用轉寄站連接器將數據傳送至叢集中的數據表。 您一開始會建立數據表和數據對應,然後指示 Splunk 將數據傳送至數據表,然後驗證結果。

必要條件

建立 Azure 數據總管數據表

建立數據表以接收 Splunk 通用轉寄站的數據,然後授與此數據表的服務主體存取權。

在下列步驟中,您會使用單一數據行 (RawText) 建立名為 SplunkUFLogs 的數據表。 這是因為 Splunk 通用轉寄站預設會以原始文字格式傳送數據。 下列命令可以在 Web UI 查詢編輯器執行。

  1. 建立資料表:

    .create table SplunkUFLogs (RawText: string)
    
  2. 確認資料表 SplunkUFLogs 已建立且是空的:

    SplunkUFLogs
    | count
    
  3. 使用必要條件中的服務主體來授與許可權,以使用包含數據表的資料庫。

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

設定 Splunk 通用轉寄站

當您下載 Splunk 通用轉寄站時,會開啟精靈來設定轉寄站。

  1. 在精靈中 ,將接收索引器 設定為指向裝載 Kusto Splunk 通用轉寄站連接器的系統。 針對 127.0.0.1 [主機名] 或 [IP ] 輸入 ,然後 9997 輸入 埠。 將目的地 索引器 保留空白。

    如需詳細資訊,請參閱 啟用 Splunk Enterprise 的接收者。

  2. 移至安裝 Splunk 通用轉寄站的資料夾,然後移至 /etc/system/local 資料夾。 建立或修改 inputs.conf 檔案,以允許轉寄站讀取記錄:

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

    如需詳細資訊,請參閱 使用 inputs.conf 監視檔案和目錄。

  3. 移至安裝 Splunk 通用轉寄站的資料夾,然後移至 /etc/system/local 資料夾。 建立或修改 outputs.conf 檔案,以判斷記錄的目的地位置,這是裝載 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]
    

    如需詳細資訊,請參閱 使用 outputs.conf 設定轉送。

  4. 重新啟動 Splunk 通用轉寄站。

設定 Kusto Splunk 通用連接器

若要設定 Kusto Splunk Universal 連接器,將記錄傳送至 Azure 數據總管數據表:

  1. 從 GitHub 存放 下載或複製連接器。

  2. 移至連接器的基底目錄:

    cd .\SplunkADXForwarder\
    
  3. 編輯config.yml以包含下列屬性:

    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
    
    欄位 描述
    ingest_url Azure 數據總管叢集的擷取 URL。 您可以在叢集的 [概觀] 索引卷標的 [數據擷取 URI] 下方的 [Azure 入口網站 中找到它。 其格式應該是 https://ingest-<clusterName>.<region>.kusto.windows.net
    client_id 您在必要條件一節中建立之Microsoft Entra 應用程式註冊的用戶端識別碼。
    client_secret 您在必要條件一節中建立Microsoft Entra 應用程式註冊的客戶端密碼。
    authority 保留您在必要條件一節中 建立之Microsoft Entra 應用程式註冊的租用戶標識碼
    database_name Azure 數據總管資料庫的名稱。
    table_name Azure 資料總管目的地數據表的名稱。
    table_mapping_name 數據表的 擷取數據對應 名稱。 如果您沒有對應,您可以從組態檔省略此屬性。 您稍後一律可以將數據剖析成各種數據行。
    data_format 內送數據的預期數據格式。 傳入數據採用原始文字格式,因此建議的格式為 csv,預設會將原始文字對應至零索引。
  4. 建置 Docker 映像:

    docker build -t splunk-forwarder-listener
    
  5. 執行 Docker 容器:

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

確認數據已內嵌至 Azure 數據總管

Docker 執行之後,數據就會傳送至您的 Azure 數據總管數據表。 您可以在 Web UI 查詢編輯器執行查詢,以確認資料是否已內嵌。

  1. 執行下列查詢,以確認資料已內嵌至數據表:

    SplunkUFLogs
    | count
    
  2. 執行下列查詢以檢視資料:

    SplunkUFLogs
    | take 100