轉送站管理
您可以使用 Google Security Operations Forwarder Management API 方法,以程式輔助方式執行下列操作:
- 建立及管理轉寄者。
- 建立及管理收集器。
- 取得 Google SecOps 轉送程式設定 (
.conf
) 和驗證 (_auth.conf
) 檔案的內容。
轉送器由一或多個收集器組成。每個收集器的設定都會指定擷取機制 (例如檔案、Kafka、PCAP、Splunk 或 Syslog) 和記錄類型。
假設符合硬體需求,您可以在同一個轉送器上使用多個收集器,從各種機制和記錄類型擷取資料。舉例來說,您可以安裝轉送器,並讓兩個系統記錄收集器分別監聽不同連接埠上的 PAN_FIREWALL 和 CISCO_ASA_FIREWALL 資料。
您可以使用這個 API,在 Google SecOps 執行個體中建立轉送器及其收集器。建立轉送器後,您可以使用「產生轉送器檔案」端點,取得轉送器設定 (.conf
) 和驗證 (_auth.conf
) 檔案的檔案內容 (以 JSON 酬載形式)。接著,這些內容可以寫入各自的 .conf
檔案,以便在 Windows 或 Linux 系統上透過 Google SecOps Forwarder 服務部署。
如需使用 Forwarder Management API 的 Python 範例,請參閱 GitHub 存放區。
建立轉送器及其收集器
必須先建立轉送器,才能建立任何收集器。
如要建立轉送器及其收集器:
取得 API 驗證憑證
Google Security Operations 代表會提供 Google 開發人員服務帳戶憑證,讓 API 用戶端與 API 通訊。
此外,初始化 API 用戶端時,您也必須提供驗證範圍。OAuth 2.0 會使用範圍來限制應用程式的帳戶存取權。應用程式要求範圍時,發給應用程式的存取權杖會受到授予範圍的限制。
請使用下列範圍初始化 Backstory 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 Backstory 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/
Backstory API 查詢限制
Backstory API 會限制任何一位客戶可對 Google SecOps 平台發出的要求量。如果達到或超過查詢限制,Backstory API 伺服器會向呼叫端傳回 HTTP 429 (RESOURCE_EXHAUSTED)。為 Backstory API 開發應用程式時,Google 建議您在系統中強制執行頻率限制,避免資源耗盡。這些限制適用於所有 Backstory API,包括 Search、Forwarder Management 和 Tooling API。
請參閱 Backstory API 配額的詳細清單。
系統會強制執行轉送器管理服務的下列限制,並以每秒查詢次數 (QPS) 為測量單位:
Backstory 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 執行個體中建立新的轉送器。新的轉送器會包含要求主體中提供的任何轉送器設定值。使用「建立轉送器」後,必須使用「建立收集器」指定 collectors 的設定值。
對於特定設定,如果要求主體中缺少設定值或設定值為零,系統會將這些設定值設為預設值。如要進一步瞭解轉送器欄位和值,請參閱「轉送器設定欄位」。
要求
POST https://backstory.googleapis.com/v2/forwarders
要求主體
{
"display_name": string,
"config": {
object (ForwarderConfig)
}
}
身體參數
欄位 | 類型 | 必要 | 說明 |
---|---|---|---|
display_name | 字串 | 必填 | 貨運公司名稱。這個名稱會顯示在 Google SecOps 介面中。 |
config | object | 選用 | 這個轉送器的設定。請參閱「轉送器設定欄位」。 |
要求範例
這個範例顯示「建立轉送器」要求中必要的鍵/值組合。 如果要求中未指定欄位,且該欄位有預設值,系統會在建立轉送器時套用預設值。如要瞭解預設值,請參閱「轉送器設定欄位」。
POST https://backstory.googleapis.com/v2/forwarders
{
"display_name": "chronicle_forwarder"
}
回應
如果要求成功,回應會傳回 HTTP 狀態碼 200 (OK)。
回應會顯示建立轉送器時套用的設定值。如果要求主體中缺少特定設定的欄位或欄位值為零,系統會在建立資源時套用預設設定值。詳情請參閱「轉送器設定欄位」。
回覆欄位
除了要求中指定的欄位和套用預設值的欄位外,回應還會包含下列產生的輸出專用欄位。
欄位 | 類型 | 說明 |
---|---|---|
名稱 | 字串 | 貨運公司的資源 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 | 字串 | 必填 | 貨運公司名稱。這個名稱會顯示在 Google SecOps 介面中。 |
config | object | 選用 | 這個轉送器的設定。請參閱「轉送器設定欄位」。 |
要求範例
以下是更新轉送器要求的範例,其中要求指定 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
回應範例
如果作業成功,Delete Forwarder 會傳回空白回應,並顯示 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 | bool | 選用 | 如果 true ,系統會先壓縮資料批次,再上傳資料。預設值為 false 。 |
metadata.asset_namespace | 字串 | 選用 | 用於識別這個轉寄者記錄的命名空間。 注意:這是全域設定,適用於轉送器和轉送器的收集器,除非在收集器層級遭到覆寫。詳情請參閱「設定命名空間」。 |
metadata.labels | list | 選用 | 可在轉送器設定中指定的任意鍵/值組合清單。 注意:這是全域設定,適用於轉送器和轉送器的收集器,除非在收集器層級遭到覆寫。 |
metadata.labels.key | 字串 | 選用 | 中繼資料標籤清單中欄位的鍵。 |
metadata.labels.value | 字串 | 選用 | 中繼資料標籤清單中欄位的值。 |
regex_filters.description | 字串 | 選用 | 說明篩除的內容和原因。 |
regex_filters.regexp | 字串 | 選用 | 用於比對每行輸入內容的規則運算式。 |
regex_filters.behavior | enum | 選用 | 指定伺服器功能的狀態。有效值為:
|
server_settings | object | 選用 | 設定轉送程式內建 HTTP 伺服器的設定,可用於設定負載平衡和高可用性選項,在 Linux 上收集系統記錄。 |
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 | 字串 | 選用 | 伺服器應監聽的 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 。 |
Collector API 方法參考資料
本節說明用於處理收集器的端點。
建立及更新收集器時,請注意每個收集器設定只能指定下列其中一項的擷取設定:
- 記錄檔資料
- Kafka 主題
- 封包資料 (pcap)
- Splunk 資料
- 系統記錄檔資料
如要瞭解如何使用轉寄者端點,請參閱「轉寄者 API 參考資料」。
建立收集器
在 Google SecOps 帳戶中建立新的收集器。使用 Create Forwarder 後,必須使用 Create Collector 指定 collectors 的設定值。
對於特定設定,要求主體中遺失或值為零的設定值會設為預設值。如要進一步瞭解收集器設定欄位和值,請參閱收集器設定欄位。
要求
POST https://backstory.googleapis.com/v2/forwarders/{forwarderID}/collectors
要求主體
{
"display_name": string,
"config": {
object (CollectorConfig)
}
"state": enum
}
身體參數
欄位 | 類型 | 必要 | 說明 |
---|---|---|---|
display_name | 字串 | 必填 | 收集器名稱。這個名稱會顯示在 Google SecOps 介面中。 |
config | object | 必填 | 這個收集器的設定。請參閱「收集器設定欄位」。 |
state | enum | 選用 | 指定收集器的目前狀態。有效的值包括:
|
要求範例
這個範例顯示「建立收集器」要求中必要的鍵/值組合。如果未提供任何欄位,系統會在建立收集器時套用預設值。
在本範例中,收集器類型為 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)。
回應會顯示建立收集器時套用的設定值。如果要求主體中缺少特定設定的欄位或欄位值為零,系統會在建立資源時套用預設設定值。詳情請參閱「收集器設定欄位」。
回覆欄位
除了要求中指定的欄位和套用預設值的欄位外,回應還會包含下列欄位:
欄位 | 類型 | 說明 |
---|---|---|
名稱 | 字串 | 收集器的資源 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 來更新收集器的顯示名稱,請在 PATCH 要求中提供 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 | 字串 | 必填 | 收集器名稱。這個名稱會顯示在 Google SecOps 介面中。 |
config | object | 選用 | 這個轉送器的設定。請參閱「收集器設定欄位」。 |
要求範例
以下是更新收集器要求的範例,要求中指定了 displayName、logType、assetNamespace 和通訊協定的新值。
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 | 字串 | 必填 | 支援的記錄類型 (可由 Google SecOps 擷取)。如需 Google SecOps 剖析器支援的記錄檔類型清單,請參閱「支援的預設剖析器」頁面中的「擷取標籤」欄。如要取得支援的記錄檔類型完整清單,請使用 logtypes 端點。 |
metadata.asset_namespace | object | 選用 | 用於識別這個收集器記錄的命名空間。 注意:這是全域設定,適用於轉送器和轉送器的收集器,除非在收集器層級遭到覆寫。詳情請參閱「設定命名空間」。 |
metadata.labels | list | 選用 | 可在收集器設定中指定的任意鍵/值組合清單。 注意:這是全域設定,適用於轉送器和轉送器的收集器,除非在收集器層級遭到覆寫。 |
metadata.labels.key | 字串 | 選用 | 中繼資料標籤清單中欄位的鍵。 |
metadata.labels.value | 字串 | 選用 | 中繼資料標籤清單中欄位的值。 |
regex_filters.description | 字串 | 選用 | 說明篩除的內容和原因。 |
regex_filters.regexp | 字串 | 選用 | 用於比對每行輸入內容的規則運算式。 |
regex_filters.behavior | enum | 選用 | 指定伺服器功能的狀態。有效值為:
|
disk_buffer.state | enum | 選用 | 指定收集器的磁碟緩衝狀態。有效的值包括:
|
disk_buffer.directory_path | 字串 | 選用 | 寫入檔案的目錄路徑。 |
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 | 字串 | 選用 | 要監控的檔案路徑。 |
kafka_settings.authentication.username | 字串 | 選用 | 用於驗證的身分使用者名稱。 |
kafka_settings.authentication.password | 字串 | 選用 | 使用者名稱所識別帳戶的密碼。 |
kafka_settings.topic | 字串 | 選用 | 要從中擷取資料的 Kafka 主題。詳情請參閱「從 Kafka 主題收集資料」。 |
kafka_settings.group_id | 字串 | 選用 | 群組 ID。 |
kafka_settings.timeout | 整數 | 選用 | 撥號等待連線完成的時間上限 (以秒為單位)。 預設值為 60 。 |
kafka_settings.brokers | 字串 | 選用 | 重複的字串,列出 Kafka 代理程式。例如: "broker-1:9092", "broker-2:9093" 注意:更新作業期間,所有值都會遭到取代。因此,如要更新代理程式清單來新增代理程式,請指定所有現有代理程式和新代理程式。 |
kafka_settings.tls_settings.certificate | 字串 | 選用 | 路徑和憑證檔案名稱。例如:/path/to/cert.pem |
kafka_settings.tls_settings.certificate_key | 字串 | 選用 | 路徑和憑證金鑰檔案名稱。例如:/path/to/cert.key |
kafka_settings.tls_settings.minimum_tls_version | 字串 | 選用 | 最低 TLS 版本。 |
kafka_settings.tls_settings.insecure_skip_verify | bool | 選用 | 如果 true ,則啟用 SSL 憑證驗證。預設值為 false 。 |
pcap_settings.network_interface | 字串 | 選用 | 用於監聽 PCAP 資料的介面。 |
pcap_settings.bpf | 字串 | 選用 | pcap 的 Berkeley 封包篩選器 (BPF)。 |
splunk_settings.authentication.username | 字串 | 選用 | 用於驗證的身分使用者名稱。 |
splunk_settings.authentication.password | 字串 | 選用 | 使用者名稱所識別帳戶的密碼。 |
splunk_settings.host | 字串 | 選用 | 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 | 字串 | 選用 | 用於篩選 Splunk 記錄的查詢。 例如: search index=* sourcetype=dns |
splunk_settings.query_mode | 字串 | 選用 | Splunk 的查詢模式。 例如: realtime |
splunk_settings.cert_ignored | bool | 選用 | 如果為 true ,系統會忽略憑證。 |
syslog_settings.protocol | enum | 選用 | 指定收集器用來監聽系統記錄資料的通訊協定。有效的值包括:
|
syslog_settings.address | 字串 | 選用 | 收集器所在位置的目標 IP 位址或主機名稱,以及接聽系統記錄檔資料的位置。 |
syslog_settings.port | 整數 | 選用 | 收集器所在的目標通訊埠,以及監聽系統記錄資料的通訊埠。 |
syslog_settings.buffer_size | 整數 | 選用 | TCP 通訊端緩衝區的大小 (以位元組為單位)。 TCP 的預設值為 65536 。UDP 的預設值為 8192 。 |
syslog_settings.connecton_timeout | 整數 | 選用 | TCP 連線中斷前的閒置秒數。 預設值為 60 。 |
syslog_settings.tls_settings.certificate | 字串 | 選用 | 路徑和憑證檔案名稱。例如:/path/to/cert.pem |
syslog_settings.tls_settings.certificate_key | 字串 | 選用 | 路徑和憑證金鑰檔案名稱。例如:/path/to/cert.key |
syslog_settings.tls_settings.minimum_tls_version | 字串 | 選用 | 最低 TLS 版本。 |
syslog_settings.tls_settings.insecure_skip_verify | bool | 選用 | 如果 true ,則啟用 SSL 憑證驗證。預設值為 false 。 |