一、安装rsyslog服务
#yum install –y rsyslog
二、调整rsyslog配置
1、修改/etc/rsyslog.conf文件,过滤自身的日志,接收日志到文件/etc/log/syslog.log
三、安装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,
清空配置添加下列信息
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
查看日志,格式已固定
四、创建模板
注:(demo可下载,只添加了部分指标)
五、创建主机