處理外掛程式用於將原始日誌進一步解析為結構化資料。
背景資訊
處理外掛程式可分為原生處理外掛程式和擴充處理外掛程式。
-
原生外掛程式:效能較優,適用於大部分業務情境,推薦優先使用。
-
擴充外掛程式:功能覆蓋更廣,當您的業務日誌過於複雜,無法使用原生外掛程式處理時,可以考慮使用擴充外掛程式完成日誌解析,但效能會受到一定影響。
使用限制
-
效能限制
-
日誌採集限制
-
擴充外掛程式對文本日誌的處理採用行模式,即檔案層級的中繼資料(例如
__tag__:__path__、__topic__等)會被存放到每一條日誌中。 -
添加擴充外掛程式後會影響和Tag相關的功能:
-
上下文查詢和LiveTail功能不可用。如果您要使用這些功能,需要額外添加aggregators配置。
-
__topic__欄位會被重新命名為__log_topic__。如果您添加了aggregators配置,日誌中將同時存在__topic__欄位和__log_topic__欄位。如果您不需要__log_topic__欄位,可使用processor_drop外掛程式刪除該欄位。 -
__tag__:__path__等欄位不再具備原生欄位索引,需要建立欄位索引。
-
-
-
外掛程式組合限制
-
Logtail 2.0以下版本(不包括2.0版本):
-
不支援同時添加原生外掛程式和擴充外掛程式。
-
原生外掛程式僅可用於採集文本日誌。使用原生外掛程式時,須符合如下要求:
-
第一個處理外掛程式必須為正則解析外掛程式、分隔字元模式解析外掛程式、JSON解析外掛程式、Nginx模式解析外掛程式、Apache模式解析外掛程式或IIS模式解析外掛程式。
-
第一個處理外掛程式之後僅允許存在1個時間解析處理外掛程式,1個過濾外掛程式和多個脫敏外掛程式。
-
-
-
Logtail 2.0版本:擴充處理外掛程式只能出現在所有的原生處理外掛程式之後,不能出現在任何原生處理外掛程式之前。
-
-
原生外掛程式解析參數組合限制
對於Logtail 2.0以下版本的正則解析、JSON解析、分隔字元解析、Nginx模式解析、Apache模式解析、IIS模式解析的原生外掛程式,您可以根據不同情境選擇不同的參數配置組合。其餘的配置組合無效,Log Service不能保證配置效果。
-
只上傳解析成功的日誌:
不勾選解析失敗時保留原始欄位和解析成功時保留原始欄位。
-
解析成功時上傳解析後的日誌,解析失敗時上傳原始日誌:
勾選解析失敗時保留原始欄位,不勾選解析成功時保留原始欄位,將重新命名的原始欄位設定為
__raw__。 -
解析成功時不僅上傳解析後的日誌,且追加原始日誌欄位,解析失敗時上傳原始日誌。
例如,原始日誌
"content": "{"request_method":"GET", "request_time":"200"}"解析成功,追加原始欄位是在解析後日誌的基礎上再增加一個欄位,欄位名為重新命名的原始欄位(如果不填則預設為原始欄位名),欄位值為原始日誌{"request_method":"GET", "request_time":"200"}。勾選解析失敗時保留原始欄位和解析成功時保留原始欄位,開啟進階參數開關並填入
{"CopingRawLog":true}。對於 Logtail 2.0 以下版本,僅部分參數組合有效。
-
處理外掛程式列表
原生外掛程式列表
|
外掛程式名稱 |
說明 |
|
正則解析 |
|
|
JSON解析 |
|
|
分隔字元模式解析 |
|
|
Nginx模式解析 |
|
|
Apache模式解析 |
|
|
IIS模式解析 |
|
|
時間解析 |
|
|
過濾處理 |
|
|
脫敏處理 |
擴充外掛程式
|
功能 |
說明 |
|
提取欄位 |
|
|
添加欄位 |
|
|
丟棄欄位 |
|
|
重新命名欄位 |
|
|
打包欄位 |
將一個或多個欄位打包為一個JSON Object格式的欄位。更多資訊,請參見擴充外掛程式:打包欄位。 |
|
展開JSON欄位 |
|
|
過濾日誌 |
通過Regex匹配日誌欄位的值,從而實現日誌過濾。更多資訊,請參見processor_filter_regex。 |
|
通過Regex匹配日誌欄位名稱,從而實現日誌過濾。更多資訊,請參見processor_filter_key_regex。 |
|
|
提取日誌時間 |
解析原始日誌中的時間欄位,並可將解析結果設定為日誌時間。更多資訊,請參見Go語言時間格式。 |
|
轉換IP地址 |
將日誌中的IP地址轉換為地理位置(國家、省份、城市、經緯度)。更多資訊,請參見擴充外掛程式:轉換IP地址。 |
|
資料脫敏 |
將日誌中的敏感性資料替換為指定字串或MD5值。更多資訊,請參見擴充外掛程式:資料脫敏。 |
|
欄位值對應 |
|
|
欄位加密 |
|
|
資料編碼與解碼 |
|
|
Log轉為Metric |
將採集到的日誌轉成SLS Metric。更多資訊,請參見擴充外掛程式:Log轉為Metric。 |
|
Log轉為Trace |
將採集到的日誌轉成SLS Trace。更多資訊,請參見擴充外掛程式:Log轉為Trace。 |
添加外掛程式
在修改配置時添加外掛程式
-
在Project列表地區,單擊目標Project。
-
在日誌存儲的日誌庫頁簽中,單擊目標日誌庫前面的>,選擇數據接入下的logtail配置。
單擊目標Logtail配置對應操作列的管理Logtail配置。
-
在Logtail配置列表中,單擊目標Logtail配置後操作列的管理Logtail配置。
-
單擊頁面上方的編輯,在頁面下方的處理配置地區,新增外掛程式,然後單擊儲存。
在建立配置時添加外掛程式
-
單擊控制台頁面右側的快速接入數據卡片。
-
在接入數據對話方塊中,單擊任意卡片,按照設定精靈進行操作,在Logtail設定步驟中添加外掛程式。具體操作,請參見採集主機文本日誌。
說明該外掛程式配置與在修改配置時的外掛程式配置相同。