本文介紹如何通過Log Service控制台建立Logtail採集配置來採集Beats和Logstash資料來源。
前提條件
已在伺服器上安裝Linux Logtail 0.16.9及以上版本或Windows Logtail 1.0.0.8及以上版本。具體操作,請參見安裝Logtail(Linux系統)或安裝Logtail(Windows系統) 。
已通過Logstash或Beats系列軟體採集到資料。
如果要通過Logstash採集資料,請參見Logstash-Lumberjack-Output。
如果要通過Beats系列軟體採集資料,請參見Beats-Lumberjack-Output。
本文以使用PacketBeat軟體採集本網資料包,並使用Logtail Lumberjack外掛程式上傳到Log Service為例,進行說明。配置PacketBeat輸出方式為Logstash,樣本如下所示。
output.logstash: hosts: ["127.0.0.1:5044"]
背景資訊
基於Logstash、Beats系列軟體對Lumberjack協議的支援,Logtail可以通過Lumberjack協議將Beats系列軟體(MetricBeat、PacketBeat、Winlogbeat、Auditbeat、Filebeat、Heartbeat等)、Logstash採集的資料上傳到Log Service。
同一Logtail可配置多個Lumberjack外掛程式,但多個外掛程式不能監聽同一連接埠。
Lumberjack外掛程式支援SSL,上傳Logstash採集的資料需要使用該功能。
操作步驟
在接入資料地區,選擇自訂資料外掛程式。
選擇目標Project和Logstore,單擊下一步。
在機器組配置頁面,配置機器組。
根據實際需求,選擇使用情境和安裝環境。
重要無論是否已有機器組,都必鬚根據實際需求正確選擇使用情境和安裝環境,這將影響後續的頁面配置。
確認目標機器組已在應用機器組地區,單擊下一步。
已有機器組
從源機器組列表選擇目標機器組。
沒有可用機器組
單擊建立機器組,在建立機器組面板設定相關參數。機器組標識分為IP地址和使用者自訂標識,更多資訊請參見建立使用者自訂標識機器組(推薦)或建立IP地址機器組。
重要建立機器組後立刻應用,可能因為串連未生效,導致心跳為FAIL,您可單擊重試。如果還未解決,請參見Logtail機器組無心跳進行排查。
在資料來源設定頁簽中,設定配置名稱和外掛程式配置,然後單擊下一步。
inputs為資料來源配置,必選項。
重要一個inputs中只允許配置一個類型的資料來源。
processors為處理配置,用於解析資料。可選項,您可以配置一種或多種處理方式。
如果當前的inputs配置無法滿足日誌解析需求,您可以在外掛程式配置中添加processors配置,即添加Logtail外掛程式處理資料。例如提取欄位、提取日誌時間、脫敏資料、過濾日誌等。更多資訊,請參見使用Logtail外掛程式處理資料。
由於Beats和Logstash輸出的都是JSON格式資料,因此需要使用
processor_anchor
將JSON展開。{ "inputs": [ { "detail": { "BindAddress": "0.0.0.0:5044" }, "type": "service_lumberjack" } ], "processors": [ { "detail": { "Anchors": [ { "ExpondJson": true, "FieldType": "json", "Start": "", "Stop": "" } ], "SourceKey": "content" }, "type": "processor_anchor" } ] }
參數
類型
是否必選
說明
type
string
是
資料來源類型,固定為service_lumberjack。
BindAddress
string
否
Lumberjack協議綁定的地址。不配置時,預設為127.0.0.1:5044,支援自訂。如果Lumberjack協議需要被區域網路內其他主機訪問,請配置為0.0.0.0:5044。
V1
boolean
否
是否使用Lumberjack V1版本協議。不配置時,預設為false。目前Logstash支援Lumberjack V1。
V2
boolean
否
是否使用Lumberjack V2版本協議。不配置時,預設為true。目前Beats系列軟體支援Lumberjack V2。
SSLCA
string
否
認證授權機構(Certificate Authority)頒發的簽署憑證路徑,預設為空白。如果是自我簽署憑證可不設定此選項。
SSLCert
string
否
認證的路徑,預設為空白。
SSLKey
string
否
認證對應私密金鑰的路徑,預設為空白。
InsecureSkipVerify
boolean
否
是否跳過SSL安全檢查。不配置時,預設為false,執行SSL安全檢查。
建立索引和預覽資料,然後單擊下一步。Log Service預設開啟全文索引。您也可以根據採集到的日誌,手動建立欄位索引,或者單擊自動產生索引,Log Service將自動產生欄位索引。更多資訊,請參見建立索引。
重要如果需要查詢日誌中的所有欄位,建議使用全文索引。如果只需查詢部分欄位、建議使用欄位索引,減少索引流量。如果需要對欄位進行分析(SELECT語句),必須建立欄位索引。
單擊查詢日誌,系統將跳轉至Logstore查詢分析頁面。您需要等待1分鐘左右,待索引生效後,才能在原始日誌頁簽中,查看已採集到的日誌。更多資訊,請參見查詢和分析日誌。
相關文檔
Log Service為Linux系統提供Logtail自動診斷工具,可以根據工具提示快速定位並解決問題。請參見如何使用Logtail自動診斷工具。
使用Logtail採集日誌後,如果預覽頁面為空白或查詢頁面無資料,請按照Logtail採集日誌失敗的排查思路進行排查。
在使用Logtail採集日誌時,可能遇到正則解析失敗、檔案路徑不正確、流量超過Shard服務能力等錯誤。查看Logtail採集錯誤的步驟,請參見如何查看Logtail採集錯誤資訊。採集資料常見的錯誤類型請參見Log Service採集資料常見的錯誤類型。
預設情況下,一個記錄檔只能匹配一個Logtail配置。如果同一份日誌需要被採集多份,請參見如何?檔案中的日誌被採集多份。
將企業內網伺服器日誌採集到Log Service,請參見採集企業內網伺服器日誌。
不同伺服器上的日誌的儲存路徑或檔案名稱相同,需要區分不同伺服器,請參見機器組Topic屬性。區分不同使用者或執行個體產生的日誌資料,請參見檔案路徑正則。
後續步驟
Logtail採集資料到Log Service後,您可以在Log Service控制台上進行查看。
_@metadata_beat: packetbeat
_@metadata_type: doc
_@metadata_version: 6.2.4
_@timestamp: 2018-06-05T03:58:42.470Z
__source__: **.**.**.**
__tag__:__hostname__: *******
__topic__:
_beat_hostname: bdbe0b8d53a4
_beat_name: bdbe0b8d53a4
_beat_version: 6.2.4
_bytes_in: 56
_bytes_out: 56
_client_ip: 192.168.5.2
_icmp_request_code: 0
_icmp_request_message: EchoRequest(0)
_icmp_request_type: 8
_icmp_response_code: 0
_icmp_response_message: EchoReply(0)
_icmp_response_type: 0
_icmp_version: 4
_ip: 127.0.0.1
_path: 127.0.0.1
_responsetime: 0
_status: OK
_type: icmp