一、安装软件:

1、在要收集日志的机器上安装filebeat:

1)、下载安装:
cd /usr/local/src
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.3.3-linux-x86_64.tar.gz
tar xvf filebeat-5.3.3-linux-x86_64.tar.gz -C /usr/local
rm -f filebeat-5.3.3-linux-x86_64.tar.gz 2)、增加配置文件:
mkdir -p /etc/filebeat cat >/etc/filebeat/filebeat.yml << EOF
filebeat.prospectors:
- input_type: log
  paths:
    - /usr/local/wintel400/log/*.log
  fields:
    document_type: CTI02-wintel-log
  tail_files: true
  ignore_olde: 24h
output.logstash:
  hosts: ["192.168.22.214:5044"]
EOF
注:增加各客户端的配置文件时修改document_type的值,还有日志收集的目录。
3)、启动(调试时可以用前台启动): 
/usr/local/filebeat-5.3.3-linux-x86_64/filebeat -e -c /etc/filebeat/filebeat.yml
nohup /usr/local/filebeat-5.3.3-linux-x86_64/filebeat -e -c /etc/filebeat/filebeat.yml

2、安装logstash:

1)、安装logstash(需要安装java1.8):
cd /usr/local/src
wget https://artifacts.elastic.co/downloads/logstash/logstash-5.3.3.tar.gz
tar zxf logstash-5.3.3.tar.gz -C /usr/local/
rm -f /logstash-5.3.3.tar.gz
2)、增加配置文件:
mkdir /etc/logstash 配置文件见下面 3)、启动(调试时先用前台启动):
/usr/local/logstash-5.3.3/bin/logstash -f /etc/logstash/
nohup /usr/local/logstash-5.3.3/bin/logstash -f /etc/logstash/ & java1.8下载:
wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.tar.gz"

logstash的配置文件:

input {beats  {port => 5045}}
filter {if [fields][document_type] == "WEB01-easycti-log" {
mutate {
add_field => [ "[@metadata][zabbix_key]" , "EasyctiLog" ]
add_field => [ "[@metadata][zabbix_host]" , "HAI--WEB01" ]
}
}
else if [fields][document_type] == "WEB02-easycti-log" {
mutate {
add_field => [ "[@metadata][zabbix_key]" , "EasyctiLog" ]
add_field => [ "[@metadata][zabbix_host]" , "HAI--WEB02" ]
}
}
else if [fields][document_type] == "WEB03-easycti-log" {
mutate {
add_field => [ "[@metadata][zabbix_key]" , "EasyctiLog" ]
add_field => [ "[@metadata][zabbix_host]" , "HAI--WEB03" ]
}
}
grok {
match => {
"message" => "\[%{GREEDYDATA:logtime}\] %{DATA:context}\.%{WORD:level}: %{GREEDYDATA:msg}"
}
}
}
output {
if [level] =~ /(ERR|error|ERROR)/ {
zabbix {
zabbix_host => "[@metadata][zabbix_host]"
zabbix_key => "[@metadata][zabbix_key]"
zabbix_server_host => "192.168.22.216"
zabbix_server_port => ""
zabbix_value => "message"
}
stdout { codec => rubydebug }
}
}

easycti-log.conf

input {beats  {port => 5044}}

filter { if [fields][document_type] == "CTI01-wintel-log" {
mutate {
add_field => [ "[@metadata][zabbix_key]" , "WintelLog" ]
add_field => [ "[@metadata][zabbix_host]" , "HAI--CTI01" ]
}
}
else if [fields][document_type] == "CTI02-wintel-log" {
mutate {
add_field => [ "[@metadata][zabbix_key]" , "WintelLog" ]
add_field => [ "[@metadata][zabbix_host]" , "HAI--CTI02" ]
}
}
grok {
match => {
"message" => "%{GREEDYDATA:logtime} \[%{WORD:level}] %{GREEDYDATA:msg}"
}
}
}
output {
if [level] =~ /(ERR|WARNING)/ {
zabbix {
zabbix_host => "[@metadata][zabbix_host]"
zabbix_key => "[@metadata][zabbix_key]"
zabbix_server_host => "192.168.22.216"
zabbix_server_port => ""
zabbix_value => "message"
}
stdout { codec => rubydebug }
}
}

wintel-log.conf

二、配置zabbix:

配置微信告警参考:http://www.cnblogs.com/kevingrace/p/5995875.html

1、配置zabbix,获取logstash发过来的日志:

1)、依次创建模板,应用集,监控项,触发器。

2)、创建应用集:

3)、创建监控项:

4)、创建触发器:

filebeat+logstash通过zabbix微信报警的更多相关文章

  1. Zabbix微信报警脚本及写触发记录

    一.Zabbix微信报警 默认路径:/usr/lib/zabbix/scripts/weixin.py #!/usr/bin/python # -*- coding: utf-8 -*- import ...

  2. Zabbix 微信报警Python版(带监控项波动图片)

    #!/usr/bin/python # -*- coding: UTF- -*- #Function: 微信报警python版(带波动图) #Environment: python import ur ...

  3. Zabbix微信报警触发

    (1)         企业应用-创建应用 1.除了对个人添加微信报警之外,还可以添加不同管理组,接受同一个应用推送的消息, 成员账号,组织部门ID,应用Agent ID,CorpID和Secret, ...

  4. 通过脚本发送zabbix微信报警

    实现zabbix通过微信报警的方式也是通过脚本来实现,与邮件报警不同的是,脚本调用的微信的相关接口的获取相对复杂一点 1.申请一个微信公众号(企业号) 申请方法不多说,如果已申请请忽略 2.在微信企业 ...

  5. (五)zabbix微信报警

    1.注册微信企业号 1)注册微信企业号 https://work.weixin.qq.com 2)通讯录添加用户 3)记住部门id 4)创建应用 5)点击刚创建的应用,记住Agentld和secret ...

  6. zabbix 微信报警

    http://blog.csdn.net/wh211212/article/details/52735236 Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越 ...

  7. zabbix 微信报警脚本

    不知道是什么原因直接用Python脚本zabbix无法执行脚本,需要一个shell来启动 #! /bin/bash userid=$ content=$ python /data/zabbix/ale ...

  8. zabbix微信报警

    [root@LinuxS04 jiaoben]# ./weixin 联系人 baojing baojingok[root@LinuxS04 jiaoben]# pwd/usr/local/zabbix ...

  9. zabbix微信报警信息优化模板

    --------------------------------告警模板1-------------------------------------- 默认标题 告警项目: {TRIGGER.NAME ...

随机推荐

  1. C++关键字之const(整理!)

     C++ Code  12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 ...

  2. sizeof 数组与指针

    在学习指针的时候,得到指针的定义和数组的定义一样,但是这时候就很好奇,指针只是一个地址,那数组和指针一样的话,sizeof时怎么得知其长度呢. 于是百度了下面的回复: 千万不要把数组名看成指针,尽管有 ...

  3. Hibernate_day04--HQL多表查询_Hibernate检索策略

    HQL多表查询 Mysql里面多表查询 1 内连接 查的是两个表关联的数据 2 左外连接 查的是左边表所有数据,右边表关联数据 3 右外连接 HQL实现多表查询 Hql多表查询 (1)内连接 (2)左 ...

  4. 【ArcGIS for Android】经纬度坐标、地图投影坐标、屏幕坐标互相转换

    SpatialReference mSR4326 = SpatialReference.create(4326); SpatialReference mSR3857 = SpatialReferenc ...

  5. ionic触摸事件

    官方文档:http://ionicframework.com/docs/api/directive/onHold/ on-hold 长按事件on-tap 点击事件 on-double-tap  双击事 ...

  6. 《C++ Primer Plus》第4章 学习笔记

    数组.结构和指针是C++的3中符合类型.数组可以在一个数据对象中存储多个同种类型的值.通过使用索引或下标,可以访问数组中各个元素.结构可以将多个不同类型的值存储在同一个数据对象中,可以使用成员关系运算 ...

  7. js 中导出excel 较长数字串会变成科学计数法(转载)

    在做项目中,碰到如题的问题.比如要将居民的信息导出到excel中,居民的身份证号码因为长度过长(大于10位),excel会自动的将过长的数字串转换成 科学计数法.现在网上找到解决方案之一: (在数字串 ...

  8. js打字效果

    //文字依次出来效果 $.fn.autotype = function() { var $text = $(this); // console.log('this', this); var str = ...

  9. OpenGL编程指南第九章:纹理映射

    转自://http://blog.csdn.net/longhuihu/article/details/8477614 纹理(texture)是一块矩形数据序列,存储的数据为颜色.亮度.alpha值. ...

  10. python--get_data_from_csv_or_txt

    一.从csv文件中获取 import osimport csv class GetDataFromCsvFile(): def __init__(self, csv_file, params_list ...