logstash 监控海量日志并报警

logstash轻松过滤海量日志,研究下logstash的其它插件,可以轻松监控日志并报警,爽歪歪了,直接附上脚本

监控说明:

1、sonp.php son-server.php 这两个URL小于100字节,状态码非200,报警
2、所有状态码非200,报警
3、所有请求超过10S,报警

邮件本机配置postfix或者sendmail,

监控脚本

input {
        redis {
    host => "127.0.0.1"
    port => "6379"
    data_type => "list"
    key => "logstash"
    type => "redis-input"
    codec => "json"
           }
   #我这里直接是从redis取出日志,上篇有介绍,当然也可以直接从日志文件取        
}

filter{
mutate {
    convert => [ "[bytes_read]", "float" ]
    #为了输出编码一致,我们这里将字节转成float
  }

  grok {
    match => [ "message" ,"sonp\.php|son-server\.php" ]
   #日志中匹配的内容,
   
   add_tag => [myurl]

}
}

output {
   
 if [response] != "200" or [request_time] >= 10 {  

  #监控状态码非200 或者 请求时间大于10s
 exec {
  
      command => "echo ‘%{@timestamp}: %{message}‘ | mail -s ‘Log_error: request time or response‘  [email protected]"
   
        }
  }

  if [bytes_read] < 100 and [response] != "200"{
   #监控字节数小于100和请求非200
exec {
    tags => [myurl]
  
     command => "echo ‘%{@timestamp}: %{message}‘ | mail -s ‘Log_error: bytes and response‘ [email protected]"       
        }
}

}
#logstash/bin/logstash agent -f log_monitor.conf &

后台启动脚本,静静等待邮件报警吧~~

时间: 2024-10-10 21:07:09

logstash 监控海量日志并报警的相关文章

logstash实现nginx日志status报警

elk搭建方法详见之前一篇文章http://blog.51cto.com/chentianwang/1915326废话不多说 环境介绍192.168.102.20 nginx logstash-agent6.1192.168.102.21 logstash-server6.1 redis-server 一,搭建测试的nginx环境配置文件如下 worker_processes 1; events { worker_connections 1024; } http { include mime.t

剑指架构师系列-Logstash分布式系统的日志监控

Logstash主要做由三部署组成: Collect:数据输入 Enrich:数据加工,如过滤,改写等 Transport:数据输出 下面来安装一下: wget https://download.elastic.co/logstash/logstash/logstash-2.3.2.tar.gz tar -zxvf logstash-2.3.2.tar.gz 在logstash-2.3.2目录下创建文件shipper.conf并配置: input { file { path => [ "/

海量日志下的日志架构优化:filebeat+logstash+kafka+ELK

前言: 实验需求说明 在前面的日志收集中,都是使用的filebeat+ELK的日志架构.但是如果业务每天会产生海量的日志,就有可能引发logstash和elasticsearch的性能瓶颈问题.因此改善这一问题的方法就是filebeat+logstash+kafka+ELK,也就是将存储从elasticsearch转移给消息中间件,减少海量数据引起的宕机,降低elasticsearch的压力,这里的elasticsearch主要进行数据的分析处理,然后交给kibana进行界面展示 实验架构图:

日志文件报警监控脚本(可用于zabbix监控文件)测试中...

因业务要求,需要对某些日志文件中出现的关键字进行监控,所以写了个脚本用于直接用zabbix调用并返回超出阈值的监控项. 主要用来替代zabbix自带的文件监控项.可以对一台机器上的多个日志文件,多个触发阈值进行监控.不用配置多条zabbix监控项及触发器. 也许将来会逐步增加其他奇怪的监控内容 脚本代码如下: #!/usr/bin/env python # -*- coding: utf-8 -*- # Author: ColinShi import sys, os import datetim

实时海量日志分析系统的架构设计、实现以及思考

1 序 对ETL系统中数据转换和存储操作的相关日志进行记录以及实时分析有助于我们更好的观察和监控ETL系统的相关指标(如单位时间某些操作的处理时间),发现系统中出现的缺陷和性能瓶颈. 由于需要对日志进行实时分析,所以Storm是我们想到的首个框架.Storm是一个分布式实时计算系统,它可以很好的处理流式数据.利用storm我们几乎可以直接实现一个日志分析系统,但是将日志分析系统进行模块化设计可以收到更好的效果.模块化的设计至少有两方面的优点: 模块化设计可以使功能更加清晰.整个日志分析系统可以分

logstash+elasticsearch +kibana 日志管理系统

Logstash是一个完全开源的工具,他可以对你的日志进行收集.分析,并将其存储供以后使用(如,搜索),您可以使用它.说到搜索,logstash带有一个web界面,搜索和展示所有日志.kibana 也是一个开源和免费的工具,他可以帮助您汇总.分析和搜索重要数据日志并提供友好的web界面.他可以为 Logstash 和 ElasticSearch 提供的日志分析的 Web 界面. 目的就是为了运维.研发很方便的进行日志的查询.Kibana一个免费的web壳:Logstash集成各种收集日志插件,还

Flume:构建高可用、可扩展的海量日志采集系统——互动出版网

这篇是计算机类的优质预售推荐>>>><Flume:构建高可用.可扩展的海量日志采集系统> 编辑推荐 开发人员. 内容简介 本书从Flume 的基本概念和设计原理开始讲解,分别介绍了不同种类的组件.如何配置 组件.如何运行Flume Agent 等.同时,分别讨论Source.Channel 和Sink 三种核心组件,不仅仅阐述每个组件的基本概念,而且结合实际的编程案例,深入.全面地介绍每个组件的详细用法,并且这部分内容也是整个Flume 框架的重中之重.之后,讲解拦截器

Centos7 之安装Logstash ELK stack 日志管理系统

一.介绍 The Elastic Stack - 它不是一个软件,而是Elasticsearch,Logstash,Kibana 开源软件的集合,对外是作为一个日志管理系统的开源方案.它可以从任何来源,任何格式进行日志搜索,分析获取数据,并实时进行展示.像盾牌(安全),监护者(警报)和Marvel(监测)一样为你的产品提供更多的可能. Elasticsearch:搜索,提供分布式全文搜索引擎 Logstash: 日志收集,管理,存储 Kibana :日志的过滤web 展示 Filebeat:监控

Logstash过滤分析日志数据/kibanaGUI调试

[Logstash] [[email protected] ~]# wget https://artifacts.elastic.co/downloads/logstash/logstash-6.3.2.tar.gz [[email protected] ~]# tar zxvf logstash-6.3.2.tar.gz -C /usr/local/ [[email protected] ~]# mv /usr/local/logstash-6.3.2/ /usr/local/logstash