Splunk

Splunk 連接器可讓您對 Splunk 資料庫執行插入、刪除、更新和讀取作業。

事前準備

使用 Splunk 連接器前,請先完成下列工作:

  • 在 Google Cloud 專案中:
    • 確認已設定網路連線。如要瞭解網路模式,請參閱「網路連線」。
    • 將 roles/connectors.admin IAM 角色授予設定連線器的使用者。
    • 將下列 IAM 角色授予要用於連接器的服務帳戶:
      • roles/secretmanager.viewer
      • roles/secretmanager.secretAccessor

      服務帳戶是特殊的 Google 帳戶類型,主要用於代表需要驗證且必須取得授權才能存取 Google API 資料的非人類使用者。如果您沒有服務帳戶,請建立服務帳戶。連接器和服務帳戶必須屬於相同專案。詳情請參閱「建立服務帳戶」。

    • 啟用下列服務:
      • secretmanager.googleapis.com (Secret Manager API)
      • connectors.googleapis.com (Connectors API)

      如要瞭解如何啟用服務,請參閱「啟用服務」。

    如果先前未啟用這些服務或權限,系統會在設定連結器時提示您啟用。

設定連接器

連線專屬於資料來源。也就是說,如果您有多個資料來源,則必須為每個資料來源建立個別的連線。如要建立連結,請按照下列步驟操作:

  1. 在 Cloud 控制台中,前往「Integration Connectors」>「Connections」頁面,然後選取或建立 Google Cloud 專案。

    前往「連線」頁面

  2. 按一下「+ 建立新連線」,開啟「建立連線」頁面。
  3. 在「位置」部分中,選擇連線的位置。
    1. 區域:從下拉式清單中選取位置。

      如需所有支援區域的清單,請參閱「地點」一文。

    2. 點按「下一步」。
  4. 在「連線詳細資料」部分,完成下列步驟:
    1. 連接器:從可用連接器的下拉式清單中選取「Splunk」。
    2. 連接器版本:從可用版本的下拉式清單中選取連接器版本。
    3. 在「連線名稱」欄位中,輸入連線執行個體的名稱。

      連線名稱必須符合下列條件:

      • 連線名稱可使用英文字母、數字或連字號。
      • 字母必須為小寫。
      • 連線名稱開頭須為英文字母,結尾則須為英文字母或數字。
      • 連結名稱不得超過 49 個半形字元。
    4. 視需要輸入連線執行個體的「Description」(說明)。
    5. 或者,可啟用 Cloud Logging,然後選取記錄層級。記錄層級預設為 Error。
    6. 服務帳戶:選取具備必要角色的服務帳戶。
    7. 視需要設定「連線節點設定」:

      • 節點數量下限:輸入連線節點數量下限。
      • 節點數量上限:輸入連線節點數量上限。

      節點是用來處理交易的連線單位 (或備用資源)。連線處理的交易量越多,就需要越多節點;反之,處理的交易量越少,需要的節點就越少。如要瞭解節點對連接器價格的影響,請參閱「 連線節點的定價」。如未輸入任何值,系統預設會將節點下限設為 2 (提高可用性),節點上限則設為 50。

    8. (選用) 按一下「+ 新增標籤」,以鍵/值組合的形式為連線新增標籤。
    9. 點按「下一步」。
  5. 在「目的地」部分,輸入要連線的遠端主機 (後端系統) 詳細資料。
    1. 目的地類型:選取目的地類型。
      • 如要指定目的地主機名稱或 IP 位址,請選取「主機位址」,然後在「主機 1」欄位中輸入位址。
      • 如要建立私人連線,請選取「端點連結」。在「Endpoint Attachment」(端點連結) 清單中,選取為後端系統建立的端點連結。

      如要建立與後端系統的公開連線,並加強安全性,可以為連線設定靜態輸出 IP 位址,然後設定防火牆規則,只允許特定靜態 IP 位址。

      如要輸入其他目的地,請按一下「+新增目的地」。

    2. 點按「下一步」。
  6. 在「驗證」部分,輸入驗證詳細資料。
    1. 選取「驗證類型」,然後輸入相關詳細資料。

      Splunk 連線支援下列驗證類型:

      • 使用者名稱和密碼 (基本驗證)
      • AccessToken
      • HTTPEventCollectorToken
    2. 如要瞭解如何設定這些驗證類型,請參閱「設定驗證」。

    3. 點按「下一步」。
  7. 檢查:檢查連結和驗證詳細資料。
  8. 點選「建立」。

設定驗證機制

根據要使用的驗證方式輸入詳細資料。

  • 使用者名稱和密碼
    • 使用者名稱:用於連線的 Splunk 使用者名稱。
    • 密碼:Secret Manager 密鑰,內含與 Splunk 使用者名稱相關聯的密碼。
  • AccessToken - 設定這項屬性,即可使用 AccessToken 屬性執行權杖型驗證。
  • HTTPEventCollectorToken - 設定此屬性,使用 HTTPEventCollectorToken 屬性執行以權杖為基礎的驗證。

連線設定範例

本節列出建立 Splunk 連線時設定各個欄位的範例值。

HTTP 事件收集器連線類型

欄位名稱 詳細資料
位置 us-central1
連接器 Splunk
連接器版本 1
連線名稱 splunk-http-event-coll-conn
啟用 Cloud Logging 否
服務帳戶 SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
節點數量下限 2
節點數量上限 50
啟用 SSL 是
信任存放區不安全連線 是
目的地類型(伺服器) 主機位址
主機位址 192.0.2.0
通訊埠 PORT
以 HTTP 事件收集器權杖為基礎的驗證 是
HTTPEventCollectorToken HTTPEVENTCOLLECTOR_TOKEN
密鑰版本 1

如要瞭解如何建立 HTTP 事件收集器權杖,請參閱「建立 HTTP 事件收集器」一文。

SSL 連線類型

欄位名稱 詳細資料
位置 us-central1
連接器 Splunk
連接器版本 1
連線名稱 splunk-ssl-connection
啟用 Cloud Logging 是
服務帳戶 SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
詳細程度 5
節點數量下限 2
節點數量上限 50
啟用 SSL 是
不安全連線 是
目的地類型(伺服器) 主機位址
主機位址 https://192.0.2.0
通訊埠 PORT
使用者密碼 是
使用者名稱 使用者
密碼 密碼
密鑰版本 1

如要使用基本驗證,您必須具備使用者角色或進階使用者角色。如要瞭解如何設定超級使用者,請參閱「設定超級使用者角色」。如要瞭解如何在 Splunk 中定義角色,請參閱「在 Splunk 平台上定義角色」。

實體、作業和動作

所有 Integration Connectors 都會為所連應用程式的物件提供抽象層。您只能透過這個抽象化存取應用程式的物件。抽象化會以實體、作業和動作的形式向您公開。

  • 實體: 實體可以視為已連結應用程式或服務中的物件,或是屬性集合。實體的定義與連接器對連接器不同。舉例來說,在資料庫連接器中,資料表是實體;在檔案伺服器連接器中,資料夾是實體;在訊息系統連接器中,佇列是實體。

    不過,連接器可能不支援或沒有任何實體,在這種情況下,Entities 清單會是空白。

  • 作業: 作業是指您可以在實體上執行的活動。您可以對實體執行下列任一操作:

    從可用清單中選取實體,系統會產生該實體可用的作業清單。如需作業的詳細說明,請參閱連線器工作中的實體作業。 不過,如果連接器不支援任何實體作業,Operations 清單就不會列出這類不支援的作業。

  • 動作: 動作是透過連接器介面提供給整合的第一類函式。動作可讓您變更一或多個實體,且因連接器而異。一般來說,動作會有一些輸入參數和輸出參數。不過,連接器可能不支援任何動作,在這種情況下,Actions 清單會是空白。

系統限制

Splunk 連接器每秒可處理 5 筆交易,每個節點也是如此,超出此限制的交易都會遭到節流。不過,這個連接器可處理的交易數量也取決於 Splunk 執行個體施加的限制。根據預設,Integration Connectors 會為連線分配 2 個節點 (以提高可用性)。

如要瞭解 Integration Connectors 適用的限制,請參閱「限制」一文。

動作

本節列出連接器支援的動作。如要瞭解如何設定動作,請參閱動作範例。

建立 HTTP 事件動作

這項動作可透過 HTTP 和 HTTPS 通訊協定,將資料和應用程式事件傳送至 Splunk 部署作業。

CreateHTTPEvent 動作的輸入參數

參數名稱 資料類型 必填 說明
EventContent 字串 是 資料表或檢視表的名稱。
ContentType 字串 否 為 EventContent 輸入內容指定的內容類型。支援的值為 JSON 和 RAWTEXT。
ChannelGUID 整數 否 活動所用頻道的 GUID。如果 ContentType 為 RAWTEXT,則必須指定此值。

CreateHTTPEvent 動作的輸出參數

這項動作會傳回所建立活動的成功狀態。

CreateIndex 動作

這項動作可讓您建立索引。

CreateIndex 動作的輸入參數

參數名稱 資料類型 必填 說明
MaxMetaEntries 字串 否 設定 bucket 中 .data 檔案的不重複行數上限,有助於減少記憶體用量。
FrozenTimePeriodInSecs 字串 否 索引資料在幾秒後會轉移至凍結狀態。預設值為 188697600 (6 年)。
HomePath 字串 否 包含索引的熱和暖水桶的絕對路徑。
MinRawFileSyncSecs 字串 否 為這個參數指定整數 (或 disable)。這個參數會設定 splunkd 在壓縮日誌切片時,強制執行檔案系統同步的頻率。
ProcessTrackerServiceInterval 字串 否 以秒為單位指定索引器檢查所啟動子 OS 程序狀態的頻率,判斷是否可為已加入佇列的請求啟動新程序。如果設為 0,索引器會每秒檢查子項程序狀態。
ServiceMetaPeriod 字串 否 定義中繼資料同步至磁碟的頻率 (以秒為單位)。
MaxHotSpanSecs 字串 否 熱或溫暖 bucket 的目標最大時間範圍上限 (以秒為單位)。
QuarantinePastSecs 字串 否 時間戳記早於 >now 的 quarantinePastSecs 事件會放入隔離區儲存空間。
ColdToFrozenDir 字串 否 凍結封存檔的目的地路徑。可做為 ColdToFrozenScript 的替代方案。
ColdPath 字串 否 包含索引 colddb 的絕對路徑。路徑必須可讀取及寫入。
MaxHotIdleSecs 字串 否 熱儲存空間的生命週期上限 (以秒為單位)
WarmToColdScript 字串 否 將資料從溫層移至冷層時要執行的指令碼路徑。
ColdToFrozenScript 字串 否 封存指令碼的路徑。
MaxHotBuckets 字串 否 每個索引可擁有的熱 bucket 數量上限。
TstatsHomePath 字串 否 儲存這個索引的資料模型加速 TSIDX 資料的位置。 如果指定,則必須以磁碟區定義的形式定義。路徑必須可寫入
RepFactor 字串 否 控制索引複製作業。這項參數僅適用於叢集中的對等節點。
  • auto - 使用主要索引複製設定值。
  • 0:關閉這個索引的複製功能。
MaxDataSize 字串 否 熱資料庫達到多大的 MB 數上限時,會觸發轉移至暖資料庫。 指定 auto 或 auto_high_volume 會導致 Splunk 自動調整此參數 (建議)。
MaxBloomBackfillBucketAge 字串 否 有效值為:如果暖或冷儲存區的年齡大於指定年齡,則為整數 [m|s|h|d],請勿建立或重建其 Bloom 篩選器。指定 0 代表永不重建 Bloom 篩選器。
BlockSignSize 字串 否 控制區塊簽章的區塊包含多少事件。如果設為 0,這個索引會停用區塊簽署功能。建議值為 100。
名稱 字串 是 要建立的索引名稱
MaxTotalDataSizeMB 字串 否 索引大小上限 (MB)。如果索引超過大小上限,系統會凍結最舊的資料。
MaxWarmDBCount 字串 否 暖儲存空間的數量上限。如果超過這個數字,系統會將最新時間值最低的暖儲存空間移至冷儲存空間。
RawChunkSizeBytes 字串 否 索引原始資料記錄檔中個別原始切片的目標未壓縮大小 (以位元組為單位)。0 不是有效值。如果指定 0,rawChunkSizeBytes 會設為預設值。
DataType 字串 否 指定索引類型
MaxConcurrentOptimizes 字串 否 可針對熱門值區執行的並行最佳化程序數量。
ThrottleCheckPeriod 字串 否 定義 Splunk 檢查索引節流條件的頻率 (以秒為單位)。
SyncMeta 字串 否 如果為 true,系統會在更新中繼資料檔案時,先呼叫同步作業,再關閉檔案描述元。這項功能可提升中繼資料檔案的完整性,特別是在作業系統當機或機器故障時。
RotatePeriodInSecs 字串 否 檢查是否需要建立新熱儲存區的頻率 (以秒為單位)。此外,還要檢查是否有應推出/凍結的暖/冷水桶。

CreateIndex 動作的輸出參數

這項操作會傳回 CreateIndex 動作的確認訊息。

如要瞭解如何設定 CreateIndex 動作,請參閱動作範例。

CreateSavedSearch 動作

這項操作可儲存搜尋記錄

CreateSavedSearch 動作的輸入參數

參數名稱 資料類型 必填 說明
IsVisible 布林值 是 指出這個已儲存的搜尋是否會顯示在可見的已儲存搜尋清單中。
RealTimeSchedule 布林值 是 如將這個值設為 1,排程器會根據目前時間,判斷下一次排定的搜尋執行時間。如果這個值設為 0,系統會根據上次執行搜尋的時間決定。
搜尋 字串 是 要儲存的搜尋查詢
說明 字串 否 已儲存搜尋的說明
SchedulePriority 字串 是 指出特定搜尋的排程優先順序
CronSchedule 字串 是 執行這項搜尋的 cron 排程。舉例來說,*/5 * * * * 會讓搜尋作業每 5 分鐘執行一次。
名稱 字串 是 搜尋名稱
UserContext 字串 是 如果提供使用者情境,系統會使用 servicesNS 節點 (/servicesNS/[UserContext]/search),否則會預設為一般端點 /services。
RunOnStartup 布林值 是 指出這項搜尋是否在啟動時執行。如果未在啟動時執行,系統會在下一個排定時間執行搜尋。
已停用 布林值 否 指出這項已儲存的搜尋是否已停用。
IsScheduled 布林值 是 指出這項搜尋是否要依時間表執行。

CreateSavedSearch 動作的輸出參數

這項操作會傳回 CreateSavedSearch 動作的確認訊息。

如要瞭解如何設定 CreateSavedSearch 動作,請參閱動作範例。

UpdateSavedSearch 動作

這項動作可讓你更新已儲存的搜尋。

UpdateSavedSearch 動作的輸入參數

參數名稱 資料類型 必填 說明
IsVisible 布林值 是 指出這個已儲存的搜尋是否會顯示在可見的已儲存搜尋清單中。
RealTimeSchedule 布林值 是 如果這個值設為 1,排程器會根據目前時間,判斷下一次排定搜尋執行的時間。如果這個值設為 0,系統會根據上次執行搜尋的時間決定。
搜尋 字串 是 要儲存的搜尋查詢
說明 字串 否 已儲存搜尋的說明
SchedulePriority 字串 是 指出特定搜尋的排程優先順序
CronSchedule 字串 是 執行這項搜尋的 cron 排程。舉例來說,*/5 * * * * 會導致搜尋每 5 分鐘執行一次。
名稱 字串 是 搜尋名稱
UserContext 字串 是 如果提供使用者情境,系統會使用 servicesNS 節點 (/servicesNS/[UserContext]/search),否則會預設為一般端點 /services。
RunOnStartup 布林值 是 指出這項搜尋是否在啟動時執行。如果未在啟動時執行,系統會在下一個排定時間執行搜尋。
已停用 布林值 否 指出這項已儲存的搜尋是否已停用。
IsScheduled 布林值 是 指出這項搜尋是否要依時間表執行。

UpdateSavedSearch 動作的輸出參數

這項操作會傳回 UpdateSavedSearch 動作的確認訊息。

如要瞭解如何設定 UpdateSavedSearch 動作,請參閱動作範例。

DeleteIndex 動作

這項操作可刪除索引。

DeleteIndex 動作的輸入參數

參數名稱 資料類型 必填 說明
名稱 字串 是 要刪除的索引名稱。

DeleteIndex 動作的輸出參數

這項操作會傳回 DeleteIndex 動作的確認訊息

如要瞭解如何設定 DeleteIndex 動作,請參閱動作範例。

UpdateIndex 動作

這項動作可讓您更新索引。

UpdateIndex 動作的輸入參數

參數名稱 資料類型 必填 說明
MaxMetaEntries 字串 否 設定 bucket 中 .data 檔案的不重複行數上限,有助於減少記憶體用量。
FrozenTimePeriodInSecs 字串 否 索引資料在幾秒後會轉移至凍結狀態。預設值為 188697600 (6 年)。
HomePath 字串 否 包含索引的熱和暖水桶的絕對路徑。
MinRawFileSyncSecs 字串 否 為這個參數指定整數 (或 disable)。這個參數會設定 splunkd 強制執行檔案系統同步的頻率,同時壓縮日誌切片。
ProcessTrackerServiceInterval 字串 否 指定索引器檢查所啟動子項 OS 程序狀態的頻率 (以秒為單位),判斷是否可為已排入佇列的請求啟動新程序。如果設為 0,索引器會每秒檢查子項程序狀態。
ServiceMetaPeriod 字串 否 定義中繼資料同步至磁碟的頻率 (以秒為單位)。
MaxHotSpanSecs 字串 否 熱或溫暖 bucket 的目標最大時間範圍上限 (以秒為單位)。
QuarantinePastSecs 字串 否 時間戳記早於 now 的 quarantinePastSecs 事件會放入隔離區儲存空間。
ColdToFrozenDir 字串 否 凍結封存檔的目的地路徑。可做為 ColdToFrozenScript 的替代方案。
ColdPath 字串 否 包含索引 colddb 的絕對路徑。路徑必須可讀取及寫入。
MaxHotIdleSecs 字串 否 熱儲存空間的生命週期上限 (以秒為單位)。
WarmToColdScript 字串 否 將資料從溫層移至冷層時要執行的指令碼路徑。
ColdToFrozenScript 字串 否 封存指令碼的路徑。
MaxHotBuckets 字串 否 每個索引可擁有的熱 bucket 數量上限。
TstatsHomePath 字串 否 儲存這個索引的資料模型加速 TSIDX 資料的位置。如果指定,則必須以磁碟區定義的形式定義。路徑必須可寫入
RepFactor 字串 否 控制索引複製作業。這項參數僅適用於叢集中的對等節點。
  • auto - 使用主要索引複製設定值。
  • 0:關閉這個索引的複製功能。
MaxDataSize 字串 否 熱資料庫達到多大的 MB 數上限時,會觸發轉移至暖資料庫。 指定 auto 或 auto_high_volume 會導致 Splunk 自動調整此參數 (建議)。
MaxBloomBackfillBucketAge 字串 否 有效值為:integer[m|s|h|d] (如果暖或冷儲存區的年齡超過指定年齡,請勿建立或重建其 Bloom 篩選器)。指定 0 代表永不重建 Bloom 篩選器。
BlockSignSize 字串 否 控制區塊簽章的區塊包含多少事件。如果設為 0,這個索引會停用簽署封鎖功能。建議值為 100。
名稱 字串 是 要建立的索引名稱
MaxTotalDataSizeMB 字串 是 索引大小上限 (MB)。如果索引超過大小上限,系統會凍結最舊的資料。
MaxWarmDBCount 字串 否 暖儲存空間的數量上限。如果超過這個數字,系統會將最新時間值最低的暖儲存空間移至冷儲存空間。
RawChunkSizeBytes 字串 否 索引原始資料記錄中個別原始切片的未壓縮大小 (以位元組為單位)。 0 不是有效值。如果指定 0,rawChunkSizeBytes 會設為預設值。
DataType 字串 否 指定索引類型
MaxConcurrentOptimizes 字串 否 可針對熱門值區執行的並行最佳化程序數量。
ThrottleCheckPeriod 字串 否 定義 Splunk 檢查索引節流條件的頻率 (以秒為單位)。
SyncMeta 字串 否 如果為 true,系統會在元資料檔案更新時,先呼叫同步作業,再關閉檔案描述元。這項功能可提升中繼資料檔案的完整性,特別是在作業系統當機或機器故障時。
RotatePeriodInSecs 字串 否 檢查是否需要建立新熱儲存區的頻率 (以秒為單位)。此外,也請檢查是否有應推出或凍結的暖/冷水桶。

UpdateIndex 動作的輸出參數

這項操作會傳回 UpdateIndex 動作的確認訊息。

如要瞭解如何設定 UpdateIndex 動作,請參閱動作範例。

動作範例

範例 - 建立 HTTP 事件

這個範例會建立 HTTP 事件。

  1. 在 Configure connector task 對話方塊中,按一下 Actions。
  2. 選取「CreateHTTPEvent」動作,然後按一下「完成」。
  3. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "EventContent": "Testing Task",
    "ContentType": "RAWTEXT",
    "ChannelGUID": "ContentType=RAWTEXT"
    }
  4. 如果動作成功,CreateHTTPEvent 工作的 connectorOutputPayload 回應參數會包含類似下列內容的值:

    [{
    "Success": "Success"
    }] 
    

範例 - 建立索引

這個範例會建立索引。

  1. 在 Configure connector task 對話方塊中,按一下 Actions。
  2. 選取「CreateIndex」動作,然後按一下「完成」。
  3. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "Name": "http_testing"
    }
  4. 如果動作成功,CreateIndex 工作的 connectorOutputPayload 回應參數會包含類似下列內容的值:

    [{
    "AssureUTF8": null,
    "BlockSignSize": null,
    "BlockSignatureDatabase": null,
    "BucketRebuildMemoryHint": null,
    "ColdPath": null,
    "FrozenTimePeriodInSecs": null,
    "HomePath": null,
    "HomePathExpanded": null,
    "IndexThreads": null,
    "IsInternal": null,
    "MaxConcurrentOptimizes": null,
    "MaxDataSize": null,
    "MaxHotBuckets": null,
    "SuppressBannerList": null,
    "Sync": null,
    "SyncMeta": null,
    "ThawedPath": null,
    "ThawedPathExpanded": null,
    "TstatsHomePath": null,
    "WarmToColdScript": null,
    }]

這個範例會建立已儲存的搜尋。

  1. 在 Configure connector task 對話方塊中,按一下 Actions。
  2. 選取「CreateSavedSearch」動作,然後按一下「完成」。
  3. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "Name": "test_created_g",
    "Search": "index=\"http_testing\"",
    "CronSchedule": "*/1 * * * *",
    "IsVisible": true,
    "RealTimeSchedule": true,
    "RunOnStartup": true,
    "IsScheduled": true,
    "SchedulePriority": "highest",
    "UserContext": "nobody"
    }
  4. 如果動作成功,CreateSavedSearch 工作的 connectorOutputPayload 回應參數會包含類似下列內容的值:

    [{
    "Success": true,
    "Message": null
    }]

這個範例會更新已儲存的搜尋。

  1. 在 Configure connector task 對話方塊中,按一下 Actions。
  2. 選取「UpdateSavedSearch」動作,然後按一下「完成」。
  3. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "Name": "test_created_g",
    "Search": "index=\"december_test_data\"",
    "CronSchedule": "*/1 * * * *",
    "IsVisible": true,
    "RealTimeSchedule": true,
    "RunOnStartup": true,
    "IsScheduled": true,
    "SchedulePriority": "highest"
    }
  4. 如果動作成功,UpdateSavedSearch 工作的 connectorOutputPayload 回應參數會包含類似下列內容的值:

    [{
    "Success": true,
    "Message": null
    }]

範例 - 刪除索引

這個範例會刪除索引。

  1. 在 Configure connector task 對話方塊中,按一下 Actions。
  2. 選取「DeleteIndex」動作,然後按一下「完成」。
  3. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "Name": "g_http_testing"
    }
  4. 如果動作成功,DeleteIndex 工作的 connectorOutputPayload 回應參數會包含類似下列內容的值:

    [{
    "Success": true,
    "ErrorCode": null,
    "ErrorMessage": null
    }]

範例 - 更新索引

這個範例會更新索引。

  1. 在 Configure connector task 對話方塊中,按一下 Actions。
  2. 選取「UpdateIndex」動作,然後按一下「完成」。
  3. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "MaxTotalDataSizeMB": "400000",
    "Name": "g_http_testing"
    }
  4. 如果動作成功,UpdateIndex 工作的 connectorOutputPayload 回應參數會包含類似下列內容的值:

    [{
    "AssureUTF8": false,
    "BlockSignSize": null,
    "BlockSignatureDatabase": null,
    "BucketRebuildMemoryHint": "auto",
    "ColdPath": "$SPLUNK_DB\\g_http_testing\\colddb",
    "ColdPathExpanded": "C:\\Program Files\\Splunk\\var\\lib\\splunk\\g_http_testing\\colddb",
    "ColdToFrozenDir": "",
    "ColdToFrozenScript": "",
    "CurrentDBSizeMB": 1.0,
    "DefaultDatabase": "main",
    "EnableOnlineBucketRepair": true,
    "EnableRealtimeSearch": true,
    "FrozenTimePeriodInSecs": 1.886976E8,
    "HomePath": "$SPLUNK_DB\\g_http_testing\\db",
    "HomePathExpanded": "C:\\Program Files\\Splunk\\var\\lib\\splunk\\g_http_testing\\db",
    "IndexThreads": "auto",
    "IsInternal": false,
    "LastInitTime": "2024-01-08 05:15:28.0",
    "MaxBloomBackfillBucketAge": "30d",
    "ThawedPath": "$SPLUNK_DB\\g_http_testing\\thaweddb",
    "ThawedPathExpanded": "C:\\Program Files\\Splunk\\var\\lib\\splunk\\g_http_testing\\thaweddb",
    "ThrottleCheckPeriod": 15.0,
    "TotalEventCount": 0.0,
    "TsidxDedupPostingsListMaxTermsLimit": 8388608.0,
    "TstatsHomePath": "volume:_splunk_summaries\\$_index_name\\datamodel_summary",
    "WarmToColdScript": "",
    "Success": true,
    "ErrorCode": null,
    "ErrorMessage": null
    }]

實體作業範例

本節說明如何在這個連接器中執行部分實體作業。

範例 - 列出所有記錄

這個範例會列出 SearchJobs 實體中的所有記錄。

  1. 在 Configure connector task 對話方塊中,按一下 Entities。
  2. 從 Entity 清單中選取 SearchJobs。
  3. 選取 List 作業,然後按一下「完成」。
  4. (選用) 在「連結器」工作的「工作輸入」部分,您可以指定篩選子句,篩選結果集。 請一律在單引號 (') 內指定篩選子句值。

範例 - 從實體取得記錄

這個範例會從 SearchJobs 實體取得具有指定 ID 的記錄。

  1. 在 Configure connector task 對話方塊中,按一下 Entities。
  2. 從 Entity 清單中選取 SearchJobs。
  3. 選取 Get 作業,然後按一下「完成」。
  4. 在「連線器」工作的「工作輸入」部分,按一下「EntityId」,然後在「預設值」欄位中輸入 1698309163.1300。

    其中 1698309163.1300 是 SearchJobs 實體中的專屬記錄 ID。

範例 - 在實體中建立記錄

這個範例會在 SearchJobs 實體中建立記錄。

  1. 在 Configure connector task 對話方塊中,按一下 Entities。
  2. 從 Entity 清單中選取 SearchJobs。
  3. 選取 Create 作業,然後按一下「完成」。
  4. 在「資料對應」工作的「資料對應器」部分,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload 做為本機變數。
    { 
    "EventSearch": "search (index=\"antivirus_logs\") sourcetype=access_combined | rex  \"(?\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3})\" | iplocation IP_address| table IP_address, City, Country" 
    } 
    

    如果整合成功,SearchJobs 工作的 connectorOutputPayload 回應參數值會類似於下列內容:

    {
    "Sid": "1699336785.1919"
    } 
    

範例 - 在實體中建立記錄

這個範例會在 DataModels 實體中建立記錄。

  1. 在 Configure connector task 對話方塊中,按一下 Entities。
  2. 從 Entity 清單中選取 DataModels。
  3. 選取 Create 作業,然後按一下「完成」。
  4. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "Id": "Test1",
    "Acceleration": "{\"enabled\":false,\"earliest_time\":\"\",
    \"max_time\":3600,\"backfill_time\":\"\",\"source_guid\":\"\",
    \"manual_rebuilds\":false,\"poll_buckets_until_maxtime\":false,
    \"max_concurrent\":3,\"allow_skew\":\"0\",\"schedule_priority\":\"default\"
    ,\"allow_old_summaries\":false,\"hunk.file_format\":\"\",\"hunk.dfs_block_size\":0,
    \"hunk.compression_codec\":\"\",\"workload_pool\":\"\"}"
    }

    如果整合成功,連接器工作的 connectorOutputPayload 欄位會包含類似下列內容的值:

    [{
    "Id": "Test1"
    }]

範例 - 從實體刪除記錄

這個範例會刪除 DataModels 實體中具有指定 ID 的記錄。

  1. 在 Configure connector task 對話方塊中,按一下 Entities。
  2. 從 Entity 清單中選取 DataModels。
  3. 選取 Delete 作業,然後按一下「完成」。
  4. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下「entityId」,然後在「Default Value」(預設值) 欄位中輸入 Test1。

範例 - 更新實體中的記錄

這個範例會更新 DataModels 實體中的記錄。

  1. 在 Configure connector task 對話方塊中,按一下 Entities。
  2. 從 Entity 清單中選取 DataModels。
  3. 選取 Update 作業,然後按一下「完成」。
  4. 在「Connectors」(連結器) 任務的「Task Input」(任務輸入內容) 區段中,按一下 connectorInputPayload,然後在 Default Value 欄位中輸入類似下列的值:
    {
    "Acceleration": "{\"enabled\":true,\"earliest_time\":\"-3mon\",
    \"cron_schedule\":\"*/5 * * * *\",\"max_time\":60,
    \"backfill_time\":\"\",\"source_guid\":\"\",\"manual_rebuilds\":false,
    \"poll_buckets_until_maxtime\":false,\"max_concurrent\":3,
    \"allow_skew\":\"0\",\"schedule_priority\":\"default\",
    \"allow_old_summaries\":false,\"hunk.file_format\":\"\",\"hunk.dfs_block_size\":0,
    \"hunk.compression_codec\":\"\",\"workload_pool\":\"\"}"
    }
  5. 按一下「entityId」,然後在「Default Value」欄位中輸入 /servicesNS/nobody/search/datamodel/model/Testing。

    如果整合成功,連接器工作的 connectorOutputPayload 欄位會包含類似下列內容的值:

    [{
    "Id": "/servicesNS/nobody/search/datamodel/model/Testing"
    }]

範例 - 使用索引的搜尋流程

本節列出使用單一索引和多個索引的所有搜尋流程。

使用單一索引建立搜尋

  1. 在 Configure connector task 對話方塊中,按一下 Entities。
  2. 從 Entity 清單中選取 SearchJobs。
  3. 選取 Create 作業,然後按一下「完成」。
  4. 在「資料對應」工作的「資料對應器」部分,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload 做為本機變數。
    {
    "EventSearch": "search (index=\"http_testing\" sourcetype=\"googlecloud-testing\") "
    }
    

    如果整合成功,SearchJobs 工作的 connectorOutputPayload 回應參數值會類似於下列內容:

    {
    "Sid": "1726051471.76"
    } 
    

使用搜尋查詢中使用的索引名稱列出作業

  1. 在 Configure connector task 對話方塊中,按一下 Entities。
  2. 從 Entity 清單中選取 Index Name。
  3. 選取 List 作業,然後按一下「完成」。
  4. 在「連線器」工作的「工作輸入」部分,您可以設定 filterClause,例如 Sid= '1726051471.76'。

  5. 如果整合成功,Index Name 工作的 connectorOutputPayload 回應參數值會類似於下列內容:

    [{
      "_bkt": "http_testing~0~D043151E-5A2D-4FAB-8647-4D5DA2F288AF",
      "_cd": "00:04:00",
      "_eventtype_color": null,
      "_indextime": 1.720702012E9,
      "_kv": null,
      "_raw": "hi How r yo\nplease\nfind \nmy notes",
      "_serial": 0.0,
      "_si": "googlecloud-bcone-splunk-vm\nhttp_testing",
      "_sourcetype": "googlecloud-testing",
      "_time": "2024-07-11 12:46:52.0",
      "eventtype": null,
      "host": "googlecloud-bcone-splunk-vm",
      "index": "http_testing",
      "linecount": 4.0,
      "punct": null,
      "source": "Testing.txt",
      "sourcetype": "googlecloud-testing",
      "splunk_server": "googlecloud-bcone-splunk-vm",
      "splunk_server_group": null,
      "timestamp": null,
      "JobId": "1726051471.76"
    }]
    

使用多個索引建立搜尋

  1. 在 Configure connector task 對話方塊中,按一下 Entities。
  2. 從 Entity 清單中選取 SearchJobs。
  3. 選取 Create 作業,然後按一下「完成」。
  4. 在「資料對應」工作的「資料對應器」部分,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload 做為本機變數。
    {
    "EventSearch": "search (index=\"http_testing\" OR index= \"googlecloud-demo\" sourcetype=\"googlecloud-testing\"  OR sourcetype=\"Demo_Text\")"
    }
    

    如果整合成功,SearchJobs 工作的 connectorOutputPayload 回應參數值會類似於下列內容:

    {
    "Sid": "1727261971.4007"
    } 
    

使用搜尋查詢中使用的索引名稱列出作業

  1. 在 Configure connector task 對話方塊中,按一下 Entities。
  2. 從 Entity 清單中選取「名稱」Index Name。
  3. 選取 List 作業,然後按一下「完成」。
  4. 在「連線器」工作的「工作輸入」部分,您可以設定 filterClause,例如 Sid= '1727261971.4007'。

  5. 如果整合成功,Index 工作的 connectorOutputPayload 回應參數值會類似於下列內容:

     [{
      "_bkt": "googlecloud-demo~0~D043151E-5A2D-4FAB-8647-4D5DA2F288AF",
      "_cd": "00:04:00",
      "_eventtype_color": null,
      "_indextime": 1.727155516E9,
      "_kv": null,
      "_raw": "Hi team\nwe have a demo please plan accordingly\nwith Google team",
      "_serial": 0.0,
      "_si": "googlecloud-bcone-splunk-vm\ngooglecloud-demo",
      "_sourcetype": "Demo_Text",
      "_time": "2024-09-24 05:25:16.0",
      "eventtype": null,
      "host": "googlecloud-bcone-splunk-vm",
      "index": "googlecloud-demo",
      "linecount": 3.0,
      "punct": null,
      "source": "Splunk_Demo.txt",
      "sourcetype": "Demo_Text",
      "splunk_server": "googlecloud-bcone-splunk-vm",
      "splunk_server_group": null,
      "timestamp": null,
      "JobId": "1727261971.4007"
    }, {
      "_bkt": "http_testing~0~D043151E-5A2D-4FAB-8647-4D5DA2F288AF",
      "_cd": "00:04:00",
      "_eventtype_color": null,
      "_indextime": 1.720702012E9,
      "_kv": null,
      "_raw": "hi How r yo\nplease\nfind \nmy notes",
      "_serial": 1.0,
      "_si": "googlecloud-bcone-splunk-vm\nhttp_testing",
      "_sourcetype": "googlecloud-testing",
      "_time": "2024-07-11 12:46:52.0",
      "eventtype": null,
      "host": "googlecloud-bcone-splunk-vm",
      "index": "http_testing",
      "linecount": 4.0,
      "punct": null,
      "source": "Testing.txt",
      "sourcetype": "googlecloud-testing",
      "splunk_server": "googlecloud-bcone-splunk-vm",
      "splunk_server_group": null,
      "timestamp": null,
      "JobId": "1727261971.4007"
    }]
    

範例 - 使用 ReadJobResults 的搜尋流程

本節列出所有搜尋流程,這些流程會使用 Splunk 連線支援的單一索引和多個索引。目前支援的記錄結果酬載大小上限為 150 MB。

建立單一索引的搜尋

  1. 在 Configure connector task 對話方塊中,按一下 Entities。
  2. 從 Entity 清單中選取 SearchJobs。
  3. 選取 Create 作業,然後按一下「完成」。
  4. 在「資料對應」工作的「資料對應器」部分,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload 做為本機變數。
    {
    "EventSearch": "search (index=\"http_testing\" sourcetype=\"googlecloud-testing\") "
    }
    

    這個範例會建立搜尋作業。如果整合成功,SearchJobs 工作的 connectorOutputPayload 回應參數值會類似以下內容:

    {
    "Sid": "1732775755.24612"
    } 
    

如要取得搜尋結果,請對 ReadJobResults 動作執行建立作業。如要確保系統會根據 Sid 篩選結果,請將 Sid 做為參數傳遞至動作。

使用 ReadJobResults 動作取得結果記錄

  1. 在 Configure connector task 對話方塊中,按一下 Actions。
  2. 選取「ReadJobResults」動作,然後按一下「完成」。
  3. 在「資料對應」工作的「資料對應器」部分,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload 做為本機變數。
    {
    "Sid": "1732775755.24612"
    }
    
  4. 如果動作成功,ReadJobResults 工作的 connectorOutputPayload 回應參數會包含類似下列內容的值:

    [{
    "_bkt": "http_testing~0~D043151E-5A2D-4FAB-8647-4D5DA2F288AF",
    "_cd": "0:4",
    "_indextime": "1720702012",
    "_raw": "hi How r yo\nplease\nfind \nmy notes",
    "_serial": "1",
    "_si": "googlecloud-bcone-splunk-vm\nhttp_testing",
    "_sourcetype": "googlecloud-testing",
    "_time": "2024-07-11T12:46:52.000+00:00",
    "host": "googlecloud-bcone-splunk-vm",
    "index": "http_testing",
    "linecount": "4",
    "source": "Testing.txt",
    "sourcetype": "googlecloud-testing",
    "splunk_server": "googlecloud-bcone-splunk-vm",
    "jobid": "1732775755.24612",
    "sid": "1732775755.24612"
    }]
    

建立具有多個索引的搜尋

  1. 在 Configure connector task 對話方塊中,按一下 Entities。
  2. 從 Entity 清單中選取 SearchJobs。
  3. 選取 Create 作業,然後按一下「完成」。
  4. 在「資料對應」工作的「資料對應器」部分,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload 做為本機變數。
    {
    "EventSearch": "search (index=\"http_testing\" OR index= \"googlecloud-demo\" sourcetype=\"googlecloud-testing\"  OR sourcetype=\"Demo_Text\")"
    }
    

    如果整合成功,SearchJobs 工作的 connectorOutputPayload 回應參數值會類似於下列內容:

    {
    "Sid": "1732776556.24634"
    } 
    

如要取得搜尋結果,請對 ReadJobResults 動作執行建立作業。如要確保系統根據 Sid 篩選結果,請將 Sid 做為參數傳遞至動作。

使用 ReadJobResults 動作的 ResultsLogs

  1. 在 Configure connector task 對話方塊中,按一下 Actions。
  2. 選取「ReadJobResults」動作,然後按一下「完成」。
  3. 在「資料對應」工作的「資料對應器」部分,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload 做為本機變數。
    {
    "Sid": "1732776556.24634"
    }
    
  4. 如果動作成功,ReadJobResults 工作的 connectorOutputPayload 回應參數會包含類似下列內容的值:

    [{
    "_bkt": "googlecloud-demo~0~D043151E-5A2D-4FAB-8647-4D5DA2F288AF",
    "_cd": "0:4",
    "_indextime": "1727155516",
    "_raw": "Hi team\nwe have a demo please plan accordingly\nwith Google team",
    "_serial": "0",
    "_si": "googlecloud-bcone-splunk-vm\googlecloud-demo",
    "_sourcetype": "Demo_Text",
    "_time": "2024-09-24T05:25:16.000+00:00",
    "host": "googlecloud-bcone-splunk-vm",
    "index": "googlecloud-demo",
    "linecount": "3",
    "source": "Splunk_Demo.txt",
    "sourcetype": "Demo_Text",
    "splunk_server": "googlecloud-bcone-splunk-vm",
    "jobid": "1732776556.24634",
    "sid": "1732776556.24634"
    },{
    "_bkt": "http_testing~0~D043151E-5A2D-4FAB-8647-4D5DA2F288AF",
    "_cd": "0:4",
    "_indextime": "1720702012",
    "_raw": "hi How r yo\nplease\nfind \nmy notes",
    "_serial": "1",
    "_si": "googlecloud-bcone-splunk-vm\nhttp_testing",
    "_sourcetype": "googlecloud-testing",
    "_time": "2024-07-11T12:46:52.000+00:00",
    "host": "googlecloud-bcone-splunk-vm",
    "index": "http_testing",
    "linecount": "4",
    "source": "Testing.txt",
    "sourcetype": "googlecloud-testing",
    "splunk_server": "googlecloud-bcone-splunk-vm",
    "jobid": "1732776556.24634",
    "sid": "1732776556.24634"
    }]
    

    使用 Terraform 建立連線

    您可以使用 Terraform 資源建立新連線。

    如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。

    如要查看用於建立連線的 Terraform 範本範例,請參閱範本範例。

    使用 Terraform 建立這項連線時,您必須在 Terraform 設定檔中設定下列變數:

    參數名稱 資料類型 必填 說明
    詳細程度 STRING 否 連線的詳細程度,範圍為 1 到 5。詳細程度越高,記錄的通訊詳細資料就越多 (要求、回應和 SSL 憑證)。
    proxy_enabled BOOLEAN 否 選取這個核取方塊,即可為連線設定 Proxy 伺服器。
    proxy_auth_scheme ENUM 否 用來向 ProxyServer 代理伺服器進行驗證的驗證類型。支援的值包括:BASIC、DIGEST、NONE
    proxy_user STRING 否 用於向 ProxyServer 代理程式驗證的使用者名稱。
    proxy_password SECRET 否 用於向 ProxyServer Proxy 驗證身分的密碼。
    proxy_ssltype ENUM 否 連線至 ProxyServer Proxy 時要使用的 SSL 類型,支援的值包括:AUTO、ALWAYS、NEVER、TUNNEL

    在整合中建立 Splunk 連線

    建立連線後,Apigee Integration 和 Application Integration 都會提供該連線。您可以在整合中透過「連接器」工作使用連線。

    • 如要瞭解如何在 Apigee Integration 中建立及使用「連接器」工作,請參閱「連接器工作」。
    • 如要瞭解如何在 Application Integration 中建立及使用連接器工作,請參閱「連接器工作」。

    向 Google Cloud 社群尋求協助

    如要發布問題及討論這個連接器,請前往 Cloud 論壇的 Google Cloud 社群。

    後續步驟