实时日志监控系统

前言

作为运维每天都需要关注主站的5xx,4xx情况以及那个接口的问题,之前的做法是通过nginx 本身的health模块获取当前访问量然后分析之后写入influxdb里面,grafana用来读取 5xx出图,并且每分钟把5xx写入到openfalcon里面作为阈值报警但是这样还是不是实时的,并且出现问题好要自己去过滤nginx日志太麻烦。

第一版结构

所有的API日志通过rsyslog 打到logserver上,然后部署 一个logstash对日志目录进行分析过过滤出5xx和做GEOIP替换写入到es里面,这么做之后日常没有出现大规模的问题还好,一旦出现突发的5xx或者4xx事件,就会造成写入es的延时增大,这个时候快速报警系统从es里面读5xx和接口就会失效。

input {
   
   
 file {
   
   

   path => "/data/logs/nginx/*/One/*.log"
   codec => json
   discover_interval => "10"
   close_older => "5"
   sincedb_path => "/data/logs/.sincedb/.sincedb"

 }
}
filter {
   
   
if [clientip] != "-" {
   
   
  geoip {
   
   
     source => "clientip"
     target => "geoip"
     database => "/usr/local/logstash-6.5.4/config/GeoIP2-City.mmdb"
     add_field => [ "[geoip][coordinates]", "%{[geoip][longitude]}" ]
     add_field => [ "[geoip][coordinates]", "%{[geoip][latitude]}" ]
  }
    mutate {
   
   
      convert =>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值