Forwarder Management API
您可以使用 Google Security Operations Forwarder Management API,透過程式輔助方式執行下列操作:
- 建立及管理轉送器。
- 建立及管理收集器。
- 取得 Google SecOps 轉送器設定 (
.conf
) 和驗證 (_auth.conf
) 檔案的內容。
轉送器由一或多個收集器組成。每個收集器的設定都會指定其攝入機制 (例如檔案、Kafka、PCAP、Splunk 或 Syslog) 和記錄類型。
假設硬體需求已滿足,您可以在同一個轉送器上使用多個收集器,從各種機制和記錄類型擷取資料。舉例來說,您可以安裝轉送器,並使用兩個 Syslog 收集器分別在不同的連接埠上收聽 PAN_FIREWALL 和 CISCO_ASA_FIREWALL 資料。
您可以使用這個 API 在 Google SecOps 執行個體中建立轉送器及其收集器。建立轉送器後,您可以使用「產生轉送器檔案」端點,取得轉送器設定 (.conf
) 和驗證 (_auth.conf
) 檔案的檔案內容 (以 JSON 酬載格式)。這些內容接著可寫入各自的 .conf
檔案,以便在 Windows 或 Linux 系統上透過 Google SecOps 轉送服務進行部署。
如需使用轉送器管理 API 的 Python 範例,請參閱 GitHub 存放區。
建立轉送器及其收集器
您必須先建立轉送器,才能建立任何收集器。
如要建立轉送器及其收集器,請按照下列步驟操作:
透過 Chronicle API 進行驗證
本文說明 Chronicle API 如何使用 OAuth 2.0 通訊協定進行驗證及授權。應用程式可以使用下列任一方法處理這項問題:
使用 Chronicle API 用戶端程式庫 (適用於您的程式設計語言)。
使用 HTTP 直接與 OAuth 2.0 系統介接。
請參閱 Python 版 Google 驗證程式庫的參考說明文件。
Google 驗證程式庫是 Chronicle API 用戶端程式庫的子集。請參閱其他語言的實作項目。
取得 API 驗證憑證
Google 安全作業團隊代表會提供 Google 開發人員服務帳戶憑證,讓 API 用戶端與 API 通訊。
您還必須在初始化 API 用戶端時提供授權範圍。OAuth 2.0 會使用範圍來限制應用程式對帳戶的存取權。應用程式要求範圍時,系統會針對應用程式核發的存取權杖,限制範圍僅限於核准的範圍。
使用下列範圍初始化 Chronicle API 用戶端:
https://www.googleapis.com/auth/chronicle-backstory
Python 範例
以下 Python 範例說明如何使用 google.oauth2
和 googleapiclient
使用 OAuth2 憑證和 HTTP 用戶端。
# Imports required for the sample - Google Auth and API Client Library Imports.
# Get these packages from https://pypi.org/project/google-api-python-client/ or run $ pip
# install google-api-python-client from your terminal
from google.auth.transport import requests
from google.oauth2 import service_account
SCOPES = ['https://www.googleapis.com/auth/chronicle-backstory']
# The apikeys-demo.json file contains the customer's OAuth 2 credentials.
# SERVICE_ACCOUNT_FILE is the full path to the apikeys-demo.json file
# ToDo: Replace this with the full path to your OAuth2 credentials
SERVICE_ACCOUNT_FILE = '/customer-keys/apikeys-demo.json'
# Create a credential using the Google Developer Service Account Credential and Chronicle API
# Scope.
credentials = service_account.Credentials.from_service_account_file(SERVICE_ACCOUNT_FILE, scopes=SCOPES)
# Build a requests Session Object to make authorized OAuth requests.
http_session = requests.AuthorizedSession(credentials)
# Your endpoint GET|POST|PATCH|etc. code will vary below
# Reference List example (for US region)
url = 'https://backstory.googleapis.com/v2/lists/COLDRIVER_SHA256'
# You might need another regional endpoint for your API call; see
# https://cloud.google.com/chronicle/docs/reference/ingestion-api#regional_endpoints
# requests GET example
response = http_session.request("GET", url)
# POST example uses json
body = {
"foo": "bar"
}
response = http_session.request("POST", url, json=body)
# PATCH example uses params and json
params = {
"foo": "bar"
}
response = http_session.request("PATCH", url, params=params, json=body)
# For more complete examples, see:
# https://github.com/chronicle/api-samples-python/
Chronicle API 查詢限制
Chronicle API 會針對任何客戶對 Google SecOps 平台提出的要求數量,強制執行限制。如果您達到或超過查詢限制,Chronicle API 伺服器會將 HTTP 429 (RESOURCE_EXHAUSTED) 傳回給呼叫端。開發 Chronicle API 應用程式時,Google 建議您在系統中強制實施頻率限制,以免耗盡資源。這些限制適用於所有 Chronicle API,包括 Search、Forwarder Management 和 Tooling API。
請參閱 Chronicle API 配額的詳細清單。
我們將實施下列 Chronicle Forwarder Management API 限制,以每秒查詢次數 (QPS) 為單位:
Chronicle API | API 端點 | 限制 |
轉送站管理 | 建立轉送器 | 1 QPS |
取得轉送站 | 1 QPS | |
列出轉寄者 | 1 QPS | |
更新轉送站 | 1 QPS | |
刪除轉送站 | 1 QPS | |
收集器管理 | 建立收集器 | 1 QPS |
取得收集器 | 1 QPS | |
列出收集器 | 1 QPS | |
更新收集器 | 1 QPS | |
刪除收集器 | 1 QPS |
轉送器 API 參考資料
本節說明建立及管理轉送器的端點。如要瞭解建立及管理收集器的端點,請參閱 Collector API 參考資料。
建立轉送站
在 Google SecOps 執行個體中建立新的轉送器。新的轉送器會包含要求主體中提供的任何轉送器設定值。使用「建立轉送器」後,必須使用「建立收集器」指定收集器的設定值。
針對某些設定,如果要求主體中缺少設定值或值為零,系統會將其設為預設值。如要進一步瞭解轉送器欄位和值,請參閱「轉送器設定欄位」。
要求
POST https://backstory.googleapis.com/v2/forwarders
要求主體
{
"display_name": string,
"config": {
object (ForwarderConfig)
}
}
內容參數
欄位 | 類型 | 必要 | 說明 |
---|---|---|---|
display_name | string | 必填 | 轉寄者名稱。這個名稱會顯示在 Google SecOps 介面中。 |
config | 物件 | 選用 | 此轉送器的設定。請參閱「轉送器設定欄位」。 |
要求範例
這個範例顯示 Create Forwarder 要求中必要的鍵/值組合。如果要求中未指定欄位,且該欄位有預設值,系統會在建立轉寄程式時套用預設值。如要進一步瞭解預設值,請參閱「轉送器設定欄位」。
POST https://backstory.googleapis.com/v2/forwarders
{
"display_name": "chronicle_forwarder"
}
回應
如果要求成功,回應會傳回 HTTP 狀態碼 200 (OK)。
回應會顯示在建立轉送器時套用的設定值。如果要求主體中缺少這些欄位或值為零,系統會在建立資源時為特定設定套用預設設定值。詳情請參閱「轉送器設定欄位」。
回應欄位
除了要求中指定的欄位和套用預設值的欄位之外,回應還包含下列產生的和僅輸出欄位。
欄位 | 類型 | 說明 |
---|---|---|
名稱 | string | 轉寄者的資源 ID。格式為「forwarders/forwarderID」。例如: forwarders/12ab3cd4-56ef-7ghi-j89k-1l23m4nopq56 |
state | enum | 指定轉送器目前的狀態。有效的值包括:
預設值為「ACTIVE」。 |
回應範例
這是針對上述要求範例傳回的回應範例。
{
"name": "forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56",
"displayName": "chronicle_forwarder",
"config": {
"uploadCompression": "false",
"serverSettings": {
"gracefulTimeout": 15,
"drainTimeout": 10,
"httpSettings": {
"port": "8080",
"host": "0.0.0.0",
"readTimeout": "3",
"readHeaderTimeout": "3",
"writeTimeout": "3",
"idleTimeout": "3"
"routeSettings": {
"availableStatusCode": "204",
"readyStatusCode": "204",
"unreadyStatusCode": "503"
},
},
},
},
"state": "ACTIVE"
}
取得轉送站
傳回轉寄程式。
要求
GET https://backstory.googleapis.com/v2/forwarders/{forwarderID}
要求主體
請勿加入要求主體。
要求範例
GET https://backstory.googleapis.com/v2/forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56
回應範例
{
"name": "forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56",
"displayName": "chronicle_forwarder",
"config": {
"uploadCompression": "false",
"serverSettings": {
"gracefulTimeout": 15,
"drainTimeout": 10,
"httpSettings": {
"port": "8080",
"host": "0.0.0.0",
"readTimeout": "3",
"readHeaderTimeout": "3",
"writeTimeout": "3",
"idleTimeout": "3"
"routeSettings": {
"availableStatusCode": "204",
"readyStatusCode": "204",
"unreadyStatusCode": "503"
},
},
},
},
"state": "ACTIVE"
}
列出轉送站
列出 Google SecOps 執行個體的所有轉送器。
要求
GET https://backstory.googleapis.com/v2/forwarders
要求範例
GET https://backstory.googleapis.com/v2/forwarders
回應
傳回轉送器清單。
回應範例
{
"forwarders": [
{
"name": "forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56",
"displayName": "chronicle_forwarder_1",
"config": {
"uploadCompression": "false",
"serverSettings": {
"gracefulTimeout": 15,
...
},
},
"state": "ACTIVE"
},
{
"name": "forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde57",
"displayName": "chronicle_forwarder_2",
"config": {
"uploadCompression": "false",
"serverSettings": {
"gracefulTimeout": 15,
...
},
},
"state": "ACTIVE"
}
]
}
更新轉送站
您可以使用 updateMask
網址查詢參數指定要更新的欄位,藉此更新轉介程式。
舉例來說,如要更新顯示名稱,您可以在修補要求中使用 updateMask
查詢參數,如下所示:
?updateMask=displayName
要求主體應只包含您要更新的欄位 (在確切位置)。
要求
PATCH https://backstory.googleapis.com/v2/forwarders/{forwarderID}?updateMask=<field_1,field_2>
要求主體
{
"display_name": string,
"config": {
object (ForwarderConfig)
},
}
內容參數
欄位 | 類型 | 必要 | 說明 |
---|---|---|---|
display_name | string | 必填 | 轉寄者名稱。這個名稱會顯示在 Google SecOps 介面中。 |
config | 物件 | 選用 | 此轉送器的設定。請參閱「轉送器設定欄位」。 |
要求範例
以下是更新轉送器要求的範例,要求會指定 displayName
的新值,並新增中繼資料標籤。
PATCH https://backstory.googleapis.com/v2/forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56?updateMask=displayName,config.metadata.labels
{
"display_name": "UpdatedForwarder",
"config": {
"metadata": {
"labels": [
{
"key": "office",
"value": "corporate",
}
]
}
}
}
回應範例
這是針對上述要求範例傳回的回應範例。
{
"name": "forwarders/{forwarderUUID}",
"displayName": "UpdatedForwarder",
"config": {
"uploadCompression": "false",
"metadata": {
"labels": [
{
"key": "office",
"value": "corporate"
}
]
}
},
"state": "ACTIVE"
}
刪除轉送站
刪除轉送器。
要求
DELETE https://backstory.googleapis.com/v2/forwarders/{forwarderID}
要求主體
請勿加入要求主體。
要求範例
DELETE https://backstory.googleapis.com/v2/forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56
回應範例
如果作業成功,DeleteForwarder 會傳回空白回應,並附上 HTTP 狀態碼 200 (OK)。
{}
產生轉送器檔案
產生並傳回轉送器的設定 (.conf
) 和驗證 (_auth.conf
) 檔案內容。
要求
GET https://backstory.googleapis.com/v2/forwarders/{forwarderID}:generateForwarderFiles
要求主體
請勿加入要求主體。
要求範例
GET https://backstory.googleapis.com/v2/forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56:generateForwarderFiles
回應範例
如果作業成功,系統會傳回 HTTP 狀態碼 200 (OK)。也會傳回轉送器設定檔的內容,包括轉送器收集器的設定資料,以及轉送器用於向 Google SecOps 例項進行驗證的驗證 (_auth.conf
) 檔案內容。
轉送站設定欄位
下表列出可透過「建立轉送器」和「更新轉送器」指定的轉送器設定。如果您在使用「建立轉送器」時未指定設定值,系統會套用該設定的預設值 (如下所示)。
您可以在要求主體的 config
物件中提供下列欄位。
欄位 | 類型 | 必要 | 說明 |
---|---|---|---|
upload_compression | 布林值 | 選用 | 如果為 true ,系統會在上傳前壓縮資料批次。預設為 false 。 |
metadata.asset_namespace | string | 選用 | 用於識別此轉發器記錄的命名空間。 注意:這是全域設定,適用於轉送器和轉送器的收集器,除非在收集器層級覆寫。詳情請參閱「設定命名空間」。 |
metadata.labels | list | 選用 | 任意鍵/值組合清單,可在轉送器設定中指定。 注意:這是全域設定,適用於轉送器和轉送器的收集器,除非在收集器層級覆寫。 |
metadata.labels.key | string | 選用 | 中繼資料標籤清單中欄位的鍵。 |
metadata.labels.value | string | 選用 | 中繼資料標籤清單中欄位的值。 |
regex_filters.description | string | 選用 | 說明篩除內容的內容和原因。 |
regex_filters.regexp | string | 選用 | 用於比對每個傳入行規則運算式。 |
regex_filters.behavior | enum | 選用 | 指定伺服器功能的狀態。有效值如下:
|
server_settings | 物件 | 選用 | 設定用於設定轉送器內建 HTTP 伺服器,可用於設定負載平衡和高可用性選項,收集 Linux 上的 syslog。 |
server_settings.state | enum | 選用 | 指定伺服器功能的狀態。有效值如下:
|
server_settings.graceful_timeout | 整數 | 選用 | 轉送器傳回不良的準備就緒/健康檢查後,仍可接受新連線的秒數。這也是在收到停止信號與實際開始關閉伺服器之間的等待時間。這樣負載平衡器就能從集區中移除轉發器。 預設值為 15 。 |
server_settings.drain_timeout | 整數 | 選用 | 轉送器等待主動連線成功關閉的秒數,之後才會由伺服器關閉。 預設值為 10 。 |
server_settings.http_settings.port | 整數 | 選用 | HTTP 伺服器用於監聽負載平衡器健康狀態檢查的通訊埠編號。必須介於 1024 至 65535 之間。 預設為 8080 。 |
server_settings.http_settings.host | string | 選用 | 伺服器應聆聽的 IP 位址或可解析為 IP 位址的主機名稱。 預設值為 0.0.0.0 (本機系統)。 |
server_settings.http_settings.read_timeout | 整數 | 選用 | 讀取整個要求 (包括標頭和主體) 的秒數上限。 預設值為 3 。 |
server_settings.http_settings.read_header_timeout | 整數 | 選用 | 讀取要求標頭的秒數上限。 預設值為 3 。 |
server_settings.http_settings.write_timeout | 整數 | 選用 | 允許傳送回應的秒數上限。 預設值為 3 。 |
server_settings.http_settings.idle_timeout | 整數 | 選用 | 啟用閒置連線時,等待下一個要求的秒數上限。 預設為 3 。 |
server_settings.http_settings.route_settings.available_status_code | 整數 | 選用 | 收到連線檢查結果且轉寄程式可用時傳回的狀態碼。 預設為 204 。 |
server_settings.http_settings.route_settings.ready_status_code | 整數 | 選用 | 轉發器準備好接受流量時傳回的狀態碼。 預設為 204 。 |
server_settings.http_settings.route_settings.unready_status_code | 整數 | 選用 | 轉發器尚未準備好接受流量時傳回的狀態碼。 預設為 503 。 |
收集器 API 參考資料
本節說明與收集器搭配使用的端點。
建立及更新收集器時,請注意,每個收集器設定只能指定下列其中一項的擷取設定,不得超過一個:
- 記錄檔資料
- Kafka 主題
- 封包資料 (pcap)
- Splunk 資料
- 系統記錄檔資料
如要瞭解如何使用轉介器,請參閱 Forwarder API 參考資料。
建立收集器
在 Google SecOps 帳戶中建立新的收集器。使用「建立轉送器」後,必須使用「建立收集器」指定收集器的設定值。
對於某些設定,如果要求主體中缺少設定值或值為零,系統會將其設為預設值。如要進一步瞭解收集器設定欄位和值,請參閱「收集器設定欄位」。
要求
POST https://backstory.googleapis.com/v2/forwarders/{forwarderID}/collectors
要求主體
{
"display_name": string,
"config": {
object (CollectorConfig)
}
"state": enum
}
內容參數
欄位 | 類型 | 必要 | 說明 |
---|---|---|---|
display_name | string | 必填 | 收集器的名稱。這個名稱會顯示在 Google SecOps 介面中。 |
config | 物件 | 必填 | 此收集器的設定。請參閱「收集器設定欄位」。 |
state | enum | 選用 | 指定收集器目前的狀態。有效的值包括:
|
要求範例
以下範例顯示 Create Collector 要求中的必要鍵/值組合。對於未提供的任何欄位,收集器建立時會套用預設值。
在此範例中,收集器類型為 file
,因此收集器設定會包含 file_settings
,用於表示收集器類型及其設定。如果收集器類型為 syslog
,則收集器設定會包含 syslog_settings
。詳情請參閱「收集器設定欄位」。
POST https://backstory.googleapis.com/v2/forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56/collectors
{
"display_name": "abc_collector",
"config" {
"log_type": "CS_EDR"
"file_settings": {
"file_path": "/opt/chronicle/edr/output/sample.txt",
}
}
}
回應
如果要求成功,回應會傳回 HTTP 狀態碼 200 (OK)。
回應會顯示在建立收集器時套用的設定值。如果要求主體中缺少這些欄位或值為零,系統會在建立資源時為特定設定套用預設設定值。詳情請參閱「收集器設定欄位」。
回應欄位
除了要求中指定的欄位和套用預設值的欄位之外,回應還包含下列欄位:
欄位 | 類型 | 說明 |
---|---|---|
名稱 | string | 收集器的資源 ID。格式為「forwarders/{forwarderID}/collectors/{collectorID}」。例如:forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56/collectors/98ab7cd6-54ef-3abc-d21e-1f23a4bcde56 |
回應範例
這是針對上述要求範例傳回的回應範例。
{
"name": "forwarders/12ab3cd4-56ef-7ghi-j89k-1l23m4nopq56/collectors/
98ab7cd6-54ef-3abc-d21e-1f23a4bcde56",
"displayName": "abc_collector",
"config": {
"logType": "tomcat",
"maxSecondsPerBatch": "10",
"maxBytesPerBatch": "1048576"
}
}
取得收集器
傳回收集器。
要求
GET https://backstory.googleapis.com/v2/forwarders/{forwarderID}/collectors/{collectorID}
要求主體
請勿加入要求主體。
要求範例
GET
https://backstory.googleapis.com/v2/forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56/collectors/98ab7cd6-54ef-3abc-d21e-1f23a4bcde56
回應範例
{
"name": "?",
"displayName": "abc_collector",
"config": {
"logType": "tomcat",
"maxSecondsPerBatch": "10",
"maxBytesPerBatch": "1048576"
}
}
可列出收集器
列出指定轉送站現有的收集器。
要求
GET https://backstory.googleapis.com/v2/forwarders/{forwarderID}/collectors
要求範例
GET https://backstory.googleapis.com/v2/forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56/collectors
回應
傳回多個收集器。
回應範例
{
"collectors": [
{
"name": "?",
"displayName": "abc_collector_1",
"config": {
"logType": "tomcat",
"maxSecondsPerBatch": "10",
"maxBytesPerBatch": "1048576"
}
},
{
"name": "?",
"displayName": "abc_collector_2",
"config": {
"logType": "tomcat",
"maxSecondsPerBatch": "10",
"maxBytesPerBatch": "1048576"
}
}
]
}
更新收集器
使用 API 更新收集器時,您可以選擇覆寫整個收集器設定,或只覆寫收集器設定的特定欄位。一般來說,建議您覆寫特定欄位,以免不小心覆寫所有資料。如要覆寫特定欄位,請在更新要求中提供 FieldMask。
如要提供 FieldMask 來更新收集器的顯示名稱,請在修補要求中提供 updateMask 網址查詢參數。例如:
?updateMask=displayName
要求主體應只包含您要更新的欄位 (在確切位置)。
要求
PATCH https://backstory.googleapis.com/v2/forwarders/{forwarderID}/collectors/{collectorID}?updateMask=<field_1,field_2>
要求主體
{
"display_name": string,
"config": {
object (CollectorConfig)
},
}
內容參數
欄位 | 類型 | 必要 | 說明 |
---|---|---|---|
displayName | string | 必填 | 收集器的名稱。這個名稱會顯示在 Google SecOps 介面中。 |
config | 物件 | 選用 | 此轉送器的設定。請參閱「收集器設定欄位」。 |
要求範例
以下是更新收集器要求的範例,要求中會指定 displayName、logType、assetNamespace 和 protocol 的新值。
PATCH https://backstory.googleapis.com/v2/forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56/collectors/98ab7cd6-54ef-3abc-d21e-1f23a4bcde56?updateMask=displayName,config.logType,config.metadata.assetNamespace,config.syslogSettings.protocol
{
"display_name": "UpdatedCollector"
"config": {
"metadata": {
"asset_namespace": "COLLECTOR",
},
"log_type": "CISCO_ASA_FIREWALL",
"syslog_settings": {
"protocol": "TCP",
}
}
}
回應範例
這是針對上述要求範例傳回的回應範例。
{
"name": "forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56/collectors/98ab7cd6-54ef-3abc-d21e-1f23a4bcde56",
"displayName": "UpdatedCollector",
"config": {
"logType": "CISCO_ASA_FIREWALL",
"metadata": {
"assetNamespace": "COLLECTOR"
},
"maxSecondsPerBatch": 10,
"maxBytesPerBatch": "1048576",
"syslogSettings": {
"protocol": "TCP",
"address": "0.0.0.0",
"port": 10514,
}
},
"state": "ACTIVE"
}
刪除收集器
刪除收集器。
要求
DELETE https://backstory.googleapis.com/v2/forwarders/{forwarderID}/collectors/{collectorID}
要求主體
請勿加入要求主體。
要求範例
DELETE https://backstory.googleapis.com/v2/forwarders/12ab3cd4-56ef-7abc-d89e-1f23a4bcde56/collectors/98ab7cd6-54ef-3abc-d21e-1f23a4bcde56
回應範例
如果作業成功,Delete Collector 會傳回空白回應,並附上 HTTP 狀態碼 200 (OK)。
{}
收集器設定欄位
您可以在要求主體的 config
物件中提供下列欄位。
欄位 | 類型 | 必要 | 說明 |
---|---|---|---|
log_type | string | 必填 | 支援的記錄類型 (可供 Google SecOps 擷取的記錄類型)。如需 Google SecOps 提供剖析器的支援記錄類型清單,請參閱「支援的預設剖析器」頁面中的「擷取標籤」欄。如要取得支援的記錄檔類型完整清單,請使用 logtypes 端點。 |
metadata.asset_namespace | 物件 | 選用 | 用於識別此收集器記錄的命名空間。 注意:這是全域設定,適用於轉送器和轉送器的收集器,除非在收集器層級覆寫。詳情請參閱「設定命名空間」。 |
metadata.labels | list | 選用 | 可在收集器設定中指定的任意鍵/值組合清單。 注意:這是全域設定,適用於轉送器和轉送器的收集器,除非在收集器層級覆寫。 |
metadata.labels.key | string | 選用 | 中繼資料標籤清單中欄位的鍵。 |
metadata.labels.value | string | 選用 | 中繼資料標籤清單中欄位的值。 |
regex_filters.description | string | 選用 | 說明篩除內容的內容和原因。 |
regex_filters.regexp | string | 選用 | 用於比對每個傳入行規則運算式。 |
regex_filters.behavior | enum | 選用 | 指定伺服器功能的狀態。有效值如下:
|
disk_buffer.state | enum | 選用 | 指定收集器的磁碟緩衝狀態。有效的值包括:
|
disk_buffer.directory_path | string | 選用 | 寫入檔案的目錄路徑。 |
disk_buffer.max_file_buffer_bytes | 整數 | 選用 | 緩衝檔案的大小上限。 |
max_seconds_per_batch | 整數 | 選用 | 不同批次之間的間隔秒數。 預設為 10 。 |
max_bytes_per_batch | 整數 | 選用 | 有多少位元組排入佇列之後,轉送站才會上傳批次。 預設為 1048576 。 |
<collector_type>_settings.<fields> | 必填 | 指定收集器類型及其設定。每個收集器都必須指定一個收集器類型及其欄位。舉例來說,如要使用 file 收集器類型,必須將 file_settings.file_path 欄位新增至設定,並指定值。例如:"file_settings": { 收集器類型及其欄位會列於本表的後續列中。可用的收集器類型如下:
|
|
file_settings.file_path | string | 選用 | 要監控的檔案路徑。 |
kafka_settings.authentication.username | string | 選用 | 用於驗證的身分使用者名稱。 |
kafka_settings.authentication.password | string | 選用 | 使用者名稱所識別帳戶的密碼。 |
kafka_settings.topic | string | 選用 | 擷取資料的 Kafka 主題。詳情請參閱「從 Kafka 主題收集資料」。 |
kafka_settings.group_id | string | 選用 | 群組 ID。 |
kafka_settings.timeout | 整數 | 選用 | 撥號要等待的連線完成時間上限 (以秒為單位)。 預設為 60 。 |
kafka_settings.brokers | string | 選用 | 重複的字串,列出 Kafka 代理程式。例如: 「broker-1:9092」、「broker-2:9093」 注意:更新作業會取代所有值。因此,如要更新仲介清單以新增新的仲介,請指定所有現有仲介和新的仲介。 |
kafka_settings.tls_settings.certificate | string | 選用 | 路徑和憑證檔案名稱。例如:/path/to/cert.pem |
kafka_settings.tls_settings.certificate_key | string | 選用 | 路徑和憑證金鑰檔案名稱。例如:/path/to/cert.key |
kafka_settings.tls_settings.minimum_tls_version | string | 選用 | 最低 TLS 版本。 |
kafka_settings.tls_settings.insecure_skip_verify | 布林值 | 選用 | 如果為 true ,則會啟用 SSL 認證驗證。預設為 false 。 |
pcap_settings.network_interface | string | 選用 | 用來監聽 PCAP 資料的介面。 |
pcap_settings.bpf | string | 選用 | pcap 適用的 Berkeley 封包篩選器 (BPF)。 |
splunk_settings.authentication.username | string | 選用 | 用於驗證的身分使用者名稱。 |
splunk_settings.authentication.password | string | 選用 | 使用者名稱所識別帳戶的密碼。 |
splunk_settings.host | string | 選用 | Splunk REST API 的主機或 IP 位址。 |
splunk_settings.port | 整數 | 選用 | Splunk REST API 的連接埠。 |
splunk_settings.minimum_window_size | 整數 | 選用 | 指定 Splunk 搜尋作業的最短時間範圍 (以秒為單位)。詳情請參閱「收集 Splunk 資料」。 預設為 10 。 |
splunk_settings.maximum_window_size | 整數 | 選用 | 指定 Splunk 搜尋的時間範圍上限 (以秒為單位)。詳情請參閱「收集 Splunk 資料」。 預設為 30 。 |
splunk_settings.query_string | string | 選用 | 用於篩選 Splunk 內記錄的查詢。 例如: search index=* sourcetype=dns |
splunk_settings.query_mode | string | 選用 | Splunk 的查詢模式。 例如: realtime |
splunk_settings.cert_ignored | 布林值 | 選用 | 如果是 true ,系統會忽略憑證。 |
syslog_settings.protocol | enum | 選用 | 指定收集器用來監聽 syslog 資料的通訊協定。有效的值包括:
|
syslog_settings.address | string | 選用 | 收集器所在位置和接聽系統記錄檔資料的目標 IP 位址或主機名稱。 |
syslog_settings.port | 整數 | 選用 | 收集器所在位置,用於監聽 syslog 資料的目標通訊埠。 |
syslog_settings.buffer_size | 整數 | 選用 | TCP 通訊端緩衝區的大小 (以位元組為單位)。 TCP 的預設值為 65536 。UDP 的預設值為 8192 。 |
syslog_settings.connecton_timeout | 整數 | 選用 | 閒置的秒數,超過此值後 TCP 連線就會中斷。 預設為 60 。 |
syslog_settings.tls_settings.certificate | string | 選用 | 路徑和憑證檔案名稱。例如:/path/to/cert.pem |
syslog_settings.tls_settings.certificate_key | string | 選用 | 路徑和憑證金鑰檔案名稱。例如:/path/to/cert.key |
syslog_settings.tls_settings.minimum_tls_version | string | 選用 | 最低 TLS 版本。 |
syslog_settings.tls_settings.insecure_skip_verify | 布林值 | 選用 | 如果為 true ,則會啟用 SSL 認證驗證。預設為 false 。 |