一、安装rsyslog服务
#yum install –y rsyslog

二、调整rsyslog配置
1、修改/etc/rsyslog.conf文件,过滤自身的日志,接收日志到文件/etc/log/syslog.log

esxi清空告警 esxi删除日志_字段

三、安装logstash服务
1、上传文件logstash-8.2.0-linux-x86_64.tar.gz,修改服务配置

#tar –xf logstash-8.2.0-linux-x86_64.tar.gz

#mv logstash-8.2.0-linux-x86_64 /usr/local/logstash

2、修改logstash服务配置文件/usr/local/logstash/config/logstash-sample.conf,

esxi清空告警 esxi删除日志_zabbix_02

清空配置添加下列信息

input {

file {

    path =>"/var/log/syslog.log"

    type =>"system"

    start_position =>"end"

}

}

filter {

grok {

      match => { "message" => "%{SYSLOGTIMESTAMP:message_timestamp} %{SYSLOGHOST:hostname} %{DATA:message_program} %{GREEDYDATA:message_content}" }#这里通过grok对message字段的数据进行字段划分,这里将message字段划分了5个子字段。其中,message_content字段会在output中用到

     }

mutate {

       add_field => {"[zabbix_key]" => "%{message_program}"} #新增的字段,字段名是zabbix_key,值为oslogs

       add_field => {"[zabbix_host]" => "%{hostname}"} #新增的字段,字段名是zabbix_host,值可以在这里直接定义,也可以引用字段变量来获取。这里>的%{host}获取的就是日志数据的主机名,这个主机名与zabbix web中“主机名称”需要保持一致

       remove_field => ["@version","message","type","host"] #这里是删除不需要的字段

    }

date { #这里是对日志输出中的日期字段进行转换,其中message_timestamp字段是默认输出的时间日期字段,将这个字段的值传给 @timestamp字段

       match => [ "message_timestamp","MMM  d HH:mm:ss","MMM dd HH:mm:ss","ISO8601"]

    }

}

output {

if [message_content]  =~ /(ERR|error|ERROR|Failed)/ {   #定义在message_content字段中,需要过滤的关键字信息,也就是在message_content字段中出

现给出的这些关键字,那么就将这些信息发送给zabbix

zabbix {

          zabbix_host =>"[zabbix_host]"  #这个zabbix_host将获取上面filter部分定义的字段变量%{host}的值

          zabbix_key =>"[zabbix_key]"  #这个zabbix_key将获取上面filter部分中给出的值

          zabbix_server_host =>"192.168.1.105"    #这是指定zabbix server的IP地址

          zabbix_server_port =>"10051"   #这是指定zabbix server的监听端口

          zabbix_value =>"message_content"    #这个很重要,指定要传给zabbix监控项item(oslogs)的值, zabbix_value默认的值是"message"字段,因>为上面我们已经删除了"message"字段,因此,这里需要重新指定,根据上面filter部分对"message"字段的内容划分,这里指定为"message_content"字段,其实,"message_content"字段输出的就是服务器上具体的日志内容

          }

          }

          stdout{

codec => rubydebug

}

          }    #这里是开启调试模式,当第一次配置的时候,建议开启,这样过滤后的日志信息直接输出的屏幕,方便进行调试,调试成功后,即可关闭

3、安装logstash-output-zabbix插件

#/usr/local/logstash/bin/logstash-plugin install logstash-output-zabbix

4、启动服务

/usr/local/logstash/bin/logstash -f /usr/local/logstash/config/logstash-sample.conf --path.data /tmp

查看日志,格式已固定

esxi清空告警 esxi删除日志_字段_03

四、创建模板
注:(demo可下载,只添加了部分指标)

esxi清空告警 esxi删除日志_运维_04

esxi清空告警 esxi删除日志_zabbix_05

五、创建主机

esxi清空告警 esxi删除日志_字段_06