全部產品
Search
文件中心

Simple Log Service:處理外掛程式概述

更新時間:Sep 28, 2024

Logtail提供處理外掛程式用於將原始日誌進一步解析為結構化資料。

背景資訊

Logtail處理外掛程式可分為原生處理外掛程式和擴充處理外掛程式。

  • 原生外掛程式:效能較優,適用於大部分業務情境,推薦優先使用。

  • 擴充外掛程式:功能覆蓋更廣,當您的業務日誌過於複雜,無法使用原生外掛程式處理時,可以考慮使用擴充外掛程式完成日誌解析,但效能會受到一定影響。

使用限制

  • 效能限制

    • 使用Logtail擴充外掛程式進行Tlog時,Logtail會消耗更多的資源(以CPU為主),請根據實際情況調整Logtail的參數配置,更多資訊請參見設定Logtail啟動參數

    • 當未經處理資料量的產生速度超過5 MB/s時,不建議您使用過於複雜的外掛程式組合來處理日誌,您可以使用Logtail擴充外掛程式進行簡單處理,再通過資料加工完成進一步處理。

  • 日誌採集限制

    • 擴充外掛程式對文本日誌的處理採用行模式,即檔案層級的中繼資料(例如__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不能保證配置效果。

    • 只上傳解析成功的日誌:

      image

    • 解析成功時上傳解析後的日誌,解析失敗時上傳原始日誌:

      image

    • 解析成功時不僅上傳解析後的日誌,並且追加原始日誌欄位,解析失敗時上傳原始日誌。

      例如,原始日誌"content": "{"request_method":"GET", "request_time":"200"}"解析成功,追加原始欄位是在解析後日誌的基礎上再增加一個欄位,欄位名為重新命名的原始欄位(如果不填則預設為原始欄位名),欄位值為原始日誌{"request_method":"GET", "request_time":"200"}

      image

添加外掛程式

在修改Logtail配置時添加外掛程式

  1. 登入Log Service控制台

  2. 在Project列表地區,單擊目標Project。

    image

  3. 日誌儲存 > 日誌庫頁簽中,單擊目標日誌庫前面的>,依次選擇資料接入 > Logtail配置

    image

  4. Logtail配置列表中,單擊目標Logtail配置後操作列的管理Logtail配置

  5. 單擊頁面上方的編輯,在頁面下方的處理配置地區,新增Logtail外掛程式,然後單擊儲存

在建立Logtail配置時添加外掛程式

  1. 登入Log Service控制台

  2. 單擊控制台頁面右側的快速接入資料卡片。

    image

  3. 接入資料對話方塊中,單擊任意卡片,按照設定精靈進行操作,在Logtail配置步驟中添加外掛程式。具體操作,請參見採集主機文本日誌

    說明

    該外掛程式配置與在修改Logtail配置時的外掛程式配置相同。

Logtail處理外掛程式列表

原生外掛程式列表

外掛程式名稱

說明

正則解析

使用Regex提取日誌欄位,並將日誌解析為索引值對形式。更多資訊,請參見正則解析

JSON解析

將JSON日誌解析為索引值對形式。更多資訊,請參見JSON解析

分隔字元模式解析

將分隔字元模式的日誌結構化,解析為索引值對形式。更多資訊,請參見分隔字元模式解析

Nginx模式解析

將Nginx日誌結構化,解析為索引值對形式。更多資訊,請參見Nginx模式解析

Apache模式解析

將Apache日誌結構化,解析為索引值對形式。更多資訊,請參見Apache模式解析

IIS模式解析

將IIS日誌結構化,解析為索引值對形式。更多資訊,請參見IIS模式解析

時間解析

解析日誌時間。更多資訊,請參見時間解析

過濾處理

過濾日誌。更多資訊,請參見過濾處理

脫敏處理

對日誌進行脫敏。更多資訊,請參見脫敏處理

擴充外掛程式

功能

說明

提取欄位

使用正則模式提取欄位。更多資訊,請參見正則模式

使用標定模式提取欄位。更多資訊,請參見標定模式

使用CSV模式提取欄位。更多資訊,請參見CSV模式

使用單字元分隔字元模式提取欄位。更多資訊,請參見單字元分隔字元模式

使用多字元分隔字元模式提取欄位。更多資訊,請參見多字元分隔字元模式

使用索引值對模式提取欄位。更多資訊,請參見索引值對模式

使用Grok模式提取欄位。更多資訊,請參見Grok模式

添加欄位

添加欄位。更多資訊,請參見添加欄位

丟棄欄位

丟棄欄位。更多資訊,請參見丟棄欄位

重新命名欄位

重新命名欄位。更多資訊,請參見重新命名欄位

打包欄位

將一個或多個欄位打包為一個JSON Object格式的欄位。更多資訊,請參見打包欄位

展開JSON欄位

對欄位值進行JSON展開。更多資訊,請參見展開JSON欄位

過濾日誌

通過Regex匹配日誌欄位的值,從而實現日誌過濾。更多資訊,請參見processor_filter_regex

通過Regex匹配日誌欄位名稱,從而實現日誌過濾。更多資訊,請參見processor_filter_key_regex

提取日誌時間

解析原始日誌中的時間欄位,並可將解析結果設定為日誌時間。更多資訊,請參見Go語言時間格式

轉換IP地址

將日誌中的IP地址轉換為地理位置(國家、省份、城市、經緯度)。更多資訊,請參見轉換IP地址

資料脫敏

將日誌中的敏感性資料替換為指定字串或MD5值。更多資訊,請參見資料脫敏

欄位值對應

對欄位值進行映射。更多資訊,請參見欄位值對應處理

欄位加密

對指定欄位進行加密。更多資訊,請參見欄位加密

資料編碼與解碼

對欄位值進行解碼。更多資訊,請參見BASE64解碼

對欄位值進行編碼。更多資訊,請參見BASE64編碼

對欄位值進行MD5編碼。更多資訊,請參見MD5編碼

Log轉為Metric

將採集到的日誌轉成SLS Metric。更多資訊,請參見Log轉為Metric

Log轉為Trace

將採集到的日誌轉成SLS Trace。更多資訊,請參見Log轉為Trace