將數據從 Splunk Universal Forwarder 擷取至 Azure Data Explorer
重要
此連接器可用於 Microsoft Fabric 中的 即時分析 。 使用本文中的指示,但有下列例外狀況:
- 如有需要,請使用 建立 KQL 資料庫中的指示建立資料庫。
- 如有需要,請使用 建立空白數據表中的指示來建立數據表。
- 使用 複製 URI 中的指示取得查詢或擷取 URI。
- 在 KQL 查詢集中執行查詢。
Splunk Universal Forwarder 是羽量版 Splunk Enterprise 軟體,可讓您同時內嵌來自許多來源的數據。 其設計目的是收集記錄數據和計算機數據,以及從各種來源轉送至中央Splunk Enterprise 伺服器或Splunk Cloud部署。 Splunk 通用轉寄站可作為可簡化數據收集和轉送程式的代理程式,使其成為 Splunk 部署中不可或缺的元件。 Azure 資料總管是一項快速又可高度調整的資料探索服務,可用於處理記錄和遙測資料。
在本文中,瞭解如何使用 Kusto Splunk 通用轉寄站連接器將數據傳送至叢集中的數據表。 您一開始會建立數據表和數據對應,然後指示 Splunk 將數據傳送至數據表,然後驗證結果。
必要條件
- Splunk Universal Forwarder 下載到記錄來源所在的同一部計算機上。
- Azure 資料總管叢集和資料庫。 建立叢集和資料庫。
- 安裝在 執行 Kusto Splunk 通用轉寄站連接器的系統上的 Docker。
- Microsoft Entra 服務主體。 建立 Microsoft Entra 服務主體。
建立 Azure Data Explorer 數據表
建立數據表以接收 Splunk Universal Forwarder 的數據,然後將此數據表的存取權授與服務主體。
在下列步驟中,您會使用單一數據行建立名為 SplunkUFLogs
的 RawText
數據表, () 。 這是因為 Splunk 通用轉寄站預設會以原始文字格式傳送數據。 下列命令可以在 Web UI 查詢編輯器中執行。
建立資料表:
.create table SplunkUFLogs (RawText: string)
確認資料表
SplunkUFLogs
已建立且是空的:SplunkUFLogs | count
使用 必要條件 中的服務主體來授與許可權,以使用包含數據表的資料庫。
.add database YOUR_DATABASE_NAME admins ('aadapp=YOUR_APP_ID;YOUR_TENANT_ID') 'Entra service principal: Splunk UF'
設定 Splunk 通用轉寄站
當您下載 Splunk 通用轉寄站時,會開啟精靈來設定轉寄站。
在精靈中,將 接收索引器 設定為指向裝載 Kusto Splunk 通用轉寄站連接器的系統。 針對
127.0.0.1
[主機名] 或 [IP ] 輸入 ,針對9997
埠輸入 。 將 目的地索引器 保留空白。如需詳細資訊,請參閱 啟用 Splunk Enterprise 的接收者。
移至安裝 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 監視檔案和目錄。
移至安裝 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 設定轉送。
重新啟動 Splunk 通用轉寄站。
設定 Kusto Splunk 通用連接器
若要設定 Kusto Splunk Universal 連接器,以將記錄傳送至 Azure Data Explorer 資料表:
從 GitHub 存放庫下載或複製連接器。
移至連接器的基底目錄:
cd .\SplunkADXForwarder\
編輯 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
欄位 Description ingest_url
Azure Data Explorer 叢集的擷取 URL。 您可以在叢集的 [概觀] 索引標籤的 [數據擷取 URI] 底下的 [Azure 入口網站 中找到它。 其格式應該是 https://ingest-<clusterName>.<region>.kusto.windows.net
。client_id
您在必要條件一節中建立 Microsoft Entra 應用程式註冊的用戶端識別碼。 client_secret
您在必要條件一節中建立 Microsoft Entra 應用程式註冊的客戶端密碼。 authority
保留您在必要條件一節中建立 Microsoft Entra 應用程式註冊的租用戶標識碼。 database_name
Azure Data Explorer 資料庫的名稱。 table_name
Azure Data Explorer 目的地數據表的名稱。 table_mapping_name
數據表的 擷取數據對應 名稱。 如果您沒有對應,您可以從組態檔省略此屬性。 您稍後一律可以將數據剖析成各種數據行。 data_format
傳入數據的預期數據格式。 傳入數據採用原始文字格式,因此建議的格式為 csv
,預設會將原始文字對應至零索引。建置 Docker 映射:
docker build -t splunk-forwarder-listener
執行 Docker 容器:
docker run -p 9997:9997 splunk-forwarder-listener
確認數據已內嵌至 Azure Data Explorer
Docker 執行之後,數據會傳送至您的 Azure Data Explorer 數據表。 您可以在 Web UI 查詢編輯器中執行查詢,以確認數據已擷取。
執行下列查詢,以確認資料已內嵌至數據表:
SplunkUFLogs | count
執行下列查詢以檢視資料:
SplunkUFLogs | take 100
相關內容
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應