You need to enable JavaScript to run this app.
导航

IP 解析函数

最近更新时间2023.11.13 16:31:41

首次发布时间2023.09.27 14:09:14

geo_parse 函数

根据 IP 地址解析出对应的地理位置和行政区划等位置信息,支持 IPV4 和 IPV6 地址。IP 地址的位置可能会变化。

函数语法/格式

geo_parse(ip,fields=要保留的字段,sep=",")

参数说明如下:

参数

参数类型

是否必选

默认值

取值范围

说明

ip

String

/

/

待解析的 IP 地址。多个 IP 地址之间用 # 分隔。

fields

String

city,province,country,city_en,province_en,country_en,isp,lat,lon

/

IP 解析结果中需要保留的字段,默认返回以下字段:

  • city:城市名称
  • province:省份名称
  • country:国家名称
  • city_en:城市英文名称
  • province_en:省份英文名称
  • country_en:国家英文名称
  • isp:网络运营商名称
  • lat:IP 地址所在纬度
  • lon:IP 地址所在经度

如果需要指定多个字段,应使用英文逗号分隔,例如 fields="city,province"

sep

String

,

可见字符

如果 ip 字段中指定多个地址,则通过此字段定义分隔符。

函数示例

函数示例 1:

  • 场景:解析一个 IP 地址。

  • 加工规则:

    f_set("ip_location",geo_parse(v("ip")))
    
  • 日志样例:

    {
        "ip":"2408:844f:9f31:4e3:31f:7522:xxxx:xxx"
    }
    
  • 加工结果:

    {
        "ip":"2408:844f:9f31:4e3:31f:7522:xxxx:xxx",
        "ip_location":{
            "city":"黄冈",
            "city_en":"Huanggang",
            "country":"中国",
            "country_en":"People's Republic of China",
            "isp":"",
            "lat":30.4477xx,
            "lon":114.8793xx,
            "province":"湖北",
            "province_en":"Hubei"
        }
    }
    

函数示例 2:

  • 场景:解析多个 IP 地址。

  • 加工规则:

    f_set("ip_location",geo_parse(v("ip"),"city,province","#"))
    
  • 日志样例:

    {
        "ip":"118.115.xx.xxx#183.225.xx.xxx"
    }
    
  • 加工结果:

    {
        "ip":"118.115.xx.xxx#183.225.xx.xxx",
        "ip_location":{
            "118.115.xx.xxx":{
                "city":"内江",
                "province":"四川"
            },
            "183.225.xx.xxx":{
                "city":"红河",
                "province":"云南"
            }
        }
    }