您在使用Logtail採集日誌時,可以使用processor_geoip外掛程式將日誌中的IP地址轉換為地理位置(國家、省份、城市、經緯度)。本文介紹processor_geoip外掛程式的參數說明和配置樣本。
表單配置方式:採集文本日誌和容器標準輸出時可用。
JSON配置方式:採集文本日誌時不可用。
功能入口
當您需要使用Logtail外掛程式處理日誌時,您可以在建立或修改Logtail採集配置時,添加外掛程式配置。具體操作,請參見處理外掛程式概述。
配置說明
Logtail安裝包中沒有GeoIP資料庫,您需要手動下載GeoIP資料庫到Logtail所在伺服器並配置,建議下載精確到City粒度的資料庫。更多資訊,請參見MaxMind GeoLite2。
請確保資料庫格式為MMDB類型。
表單配置方式
參數說明
配置處理器類型為轉換IP地址,相關參數說明如下表所示。
參數
說明
原始欄位
待進行IP地址轉換的原始欄位名。
GeoIP資料庫路徑
GeoIP資料庫的全路徑。例如
/user/data/GeoLite2-City_20180102/GeoLite2-City.mmdb
。保留原始欄位
選中該選項後,解析後的日誌中將保留原始欄位。
原始欄位缺失報錯
選中該選項後,如果原始日誌中無您所指定的原始欄位,系統將報錯。
解析失敗報錯
選中該選項後,如果IP地址無效或在資料庫中未匹配到該IP地址,系統將報錯。
語言
語言屬性。預設值為zh-CN。
重要請確保您的GeoIP資料庫中包含對應的語言。
配置樣本
將日誌中的IP地址轉換成對應的地理位置,樣本如下:
原始日誌
"source_ip" : "**.**.**.**"
Logtail外掛程式處理配置
處理結果
"source_ip" : "**.**.**.**" "source_ip_province_" : "浙江省" "source_ip_city_" : "杭州" "source_ip_province_code_" : "ZJ" "source_ip_country_code_" : "CN" "source_ip_longitude_" : "120.********" "source_ip_latitude_" : "30.********"
JSON配置方式
參數說明
配置type為processor_geoip,detail說明如下表所示。
參數
類型
是否必選
說明
SourceKey
String
是
待進行IP地址轉換的原始欄位名。
DBPath
String
是
GeoIP資料庫的全路徑。例如/user/data/GeoLite2-City_20180102/GeoLite2-City.mmdb。
NoKeyError
Boolean
否
原始日誌中無您所指定的原始欄位名時,系統是否報錯。
true:報錯。
false(預設值):不報錯。
NoMatchError
Boolean
否
IP地址無效或在資料庫中未匹配到該IP地址時,系統是否報錯。
true(預設值):報錯。
false:不報錯。
KeepSource
Boolean
否
解析後的日誌中,是否保留原始欄位。
true(預設值):保留。
false:不保留。
Language
String
否
語言屬性。預設值為zh-CN。
重要請確保您的GeoIP資料庫中包含對應的語言。
配置樣本
將日誌中的IP地址轉換成對應的地理位置,樣本如下:
原始日誌
"source_ip" : "**.**.**.**"
Logtail外掛程式處理配置
{ "type": "processor_geoip", "detail": { "SourceKey": "source_ip", "NoKeyError": true, "NoMatchError": true, "KeepSource": true, "DBPath" : "/user/local/data/GeoLite2-City_20180102/GeoLite2-City.mmdb" } }
處理結果
"source_ip" : "**.**.**.**" "source_ip_city_" : "杭州" "source_ip_province_code_" : "ZJ" "source_ip_country_code_" : "CN" "source_ip_longitude_" : "120.********" "source_ip_latitude_" : "30.********"