ELK 之 logstash 利用 IP 获取地理位置

ELK 之 logstash 利用 IP 获取地理位置 geoip

摘要

在平常使用时,利用logstash获取日志信息,有时需要将日志中的IP地址转换成坐标或是实际的位置,这里提供一种可行的解决方案。(笔者实际生产环境中使用这种方案,仅供参考)

解决方案

将原始IP,利用Maxmind GeoLite2 databases数据库转换成geoip可以参考官方文档

这里利用两种过滤器,首先利用dissect解析日志,其次利用geoip将IP转换成坐标地址。

input {
   
    file {
   
        path => "/home/server/logs/web_log.log*" #要监听的日志文件路径 
        type => web_log #TODO 日志类型
        exclude => "*.gz"       #不想监听的文件规则,基于glob匹配语法
        start_position => "end"   #第一次丛头开始读取文件 beginning or end
        stat_interval => "3"    #定时检查文件是否更新,默认1s
    }
}

filter {
   
    dissect {
   
      mapping => {
   
        message => "%{username}###%{url}###%{method}###%{start_time}###%{ip}"
      }
    }
   geoip {
   
     source => "ip"
     target => "geoip"
     # 可以指定IP数据库 database => "/server/Ge
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值