logstash 6.3.2 geoip

一、GEOIP

1、说明

GeoLite2 数据库是一个免费的 IP 地理定位数据库,与 MaxMind 的 GeoIP2 数据库有一定可比性,但不如后者准确。GeoLite2 Country 与 City 数据库在每月的第一个周二更新。GeoLite2 ASN 数据库的更新时间为每周二。

IP 地理定位在本质上缺乏准确性。地点通常接近人口的中心。 由 GeoIP 数据库提供的任何地点均不应用来确认某个具体的地址或住户。

针对我们为某个 IP 地址返回的经纬度坐标,用准确性半径作为其地理定位准确度的标识。IP 地址的实际地点很可能位于该半径和经纬度坐标界定的区域内。

2、geoip 下载地址

https://dev.maxmind.com/geoip/geoip2/geolite2/

3、geoip 下载链接(免费版 geolite2)

wget http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.tar.gz


二、logstash

1、说明

logstash geoip 插件
logstash 可以通过 geoip 插件并通过配置 geoip 库来实现字段匹配来获取具体字段的请求地址

logstash 加载日志:

[2018-08-28T11:59:56,305][INFO ][logstash.filters.geoip ] Using geoip database {:path=>”/usr/local/src/GeoLite2-City_20180807/GeoLite2-City.mmdb”}

2、配置

filter {
    geoip {
        source => "remote_addr"
        database => "/usr/local/src/GeoLite2-City_20180807/GeoLite2-City.mmdb"
    }
}

3、显示

logstash 6.3.2 geoip_第1张图片

logstash 6.3.2 geoip_第2张图片

4、geoip 过滤设置

如果在查看用户地理信息的时候,只需要某个字段的内容,只需要指定地址即可,例如:我只需要 contry_name/region_code/city_name/ip 字段

logstash 配置

filter {
    geoip {
        source => "remote_addr"
        database => "/usr/local/src/GeoLite2-City_20180807/GeoLite2-City.mmdb"
        fields => ["country_name","region_code", "city_name", "ip"]
    }
}

5、geoip 过滤显示

logstash 6.3.2 geoip_第3张图片


三、geoip mapping

logstash 6.x 模版 json 文件
https://github.com/logstash-plugins/logstash-output-elasticsearch/blob/master/lib/logstash/outputs/elasticsearch/elasticsearch-template-es6x.json

logstash 6.x geoip 官方配置
https://www.elastic.co/cn/blog/geoip-in-the-elastic-stack

你可能感兴趣的:(logstash)