您在使用Logtail采集日志时,可以使用processor_geoip插件将日志中的IP地址转换为地理位置(国家、省份、城市、经纬度)。本文介绍processor_geoip插件的参数说明和配置示例。

重要 目前,仅选择数据源为Kubernetes-标准输出时,您可以通过表单配置方式添加插件配置。

功能入口

当您需要使用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插件处理配置转换IP地址
    • 处理结果
      "source_ip_city_" : "**.**.**.**"
      "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配置方式

  • 参数说明
    配置typeprocessor_geoipdetail说明如下表所示。
    参数类型是否必选说明
    SourceKeyString待进行IP地址转换的原始字段名。
    DBPathStringGeoIP数据库的全路径。例如/user/data/GeoLite2-City_20180102/GeoLite2-City.mmdb
    NoKeyErrorBoolean原始日志中无您所指定的原始字段名时,系统是否报错。
    • true:报错。
    • false(默认值):不报错。
    NoMatchErrorBooleanIP地址无效或在数据库中未匹配到该IP地址时,系统是否报错。
    • true(默认值):报错。
    • false:不报错。
    KeepSourceBoolean解析后的日志中,是否保留原始字段。
    • true(默认值):保留。
    • false:不保留。
    LanguageString语言属性。默认值为zh-CN
    重要 请确保您的GeoIP数据库中包含对应的语言。
  • 配置示例
    将日志中的IP地址转换成对应的地理位置,示例如下:
    • 原始日志
      "source_ip" : "**.**.**.**"
    • Logtail插件处理配置
      {
         "type": "processor_geoip",
          "detail": {
               "SourceKey": "ip",
               "NoKeyError": true,
               "NoMatchError": true,
               "KeepSource": true,
               "DBPath" : "/user/local/data/GeoLite2-City_20180102/GeoLite2-City.mmdb"
          }
      }
    • 处理结果
      "source_ip_city_" : "**.**.**.**"
      "source_ip_province_" : "浙江省"
      "source_ip_city_" : "杭州"
      "source_ip_province_code_" : "ZJ"
      "source_ip_country_code_" : "CN"
      "source_ip_longitude_" : "120.********"
      "source_ip_latitude_" : "30.********"