企业日志分析之linux系统message收集展现

以前写了收集linux系统历史history命令,下面介绍一下系统里日志收集与展现的。linux

老规矩,先看效果,满意的话继续看。redis

1、效果图docker

一、总览
json

wKioL1YthELSF2CGAAVVoW2EuIs388.jpg

二、linux系统日志收集数据总量bash

wKiom1YthEmDRT6dAACF5-7tbtg841.jpg

主要是展现所选范围内容收集日志总量服务器

三、linux系统日志收集主机数tcp

wKiom1YthJfy7zvhAAB1VRxXbUA808.jpg

主要是展现当前总共有多少台主机上传了message日志数据ide

四、linux系统日志程序类型Top5spa

wKioL1YthQbR556rAACUzYEf4Nw154.jpg

主要是展现收集的日志信息里前5个程序名;我这5个都是docker服务器,因此docker日志有不少。日志

五、linux系统日志时间数据总量图

wKioL1YthWKCJ96bAAD8n97EoUk943.jpg

主要是展现每一个时间段收集的数据量

六、linux系统日志数据

wKioL1Ythe-guwNCAALjQ8a9w6c267.jpg

主要是展现详细的日志数据

安装elk的过程能够参考上一篇,地址是http://dl528888.blog.51cto.com/2382721/1703059

2、收集日志

我收集的是系统/var/log/messages日志,而后经过rsyslog的tcp 8514端口发给logstash。

一、配置rsyslog

默认rsyslog都安装了,因此只须要修改配置

在/etc/rsyslog.conf里添加

*.* @@localhost:8514

而后重启rsyslog

二、配置logstash

[root@puppet tmp]# cat /etc/logstash/conf.d/logstash_agent.conf
input {
    tcp {
    port => "8514"
    type => "syslog"
   }
}

filter {
  if [type] == "syslog" {
    grok {
      match => { "message" => "%{SYSLOGTIMESTAMP:syslog_timestamp} %{SYSLOGHOST:syslog_hostname} %{DATA:syslog_program}(?:\[%{POSINT:syslog_pid}\])?: %{GREEDYDATA:syslog_message}" }
    }
  }
}

output {
redis {

host => ["10.10.125.8:6379"]

data_type =>"list"
key => "logstash:redis"

}

}

三、导入模板

导入顺序

一、Linux系统日志试图.json

二、Linux系统日志搜索.json

三、Linux系统日志Dashboard.json

其余的有问题能够留言。

相关文章
相关标签/搜索