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

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

一、效果图

1、总览

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

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

企业日志分析之linux系统message收集展示 _系统日志_02

主要是展示所选范围内容收集日志总量

3、linux系统日志收集主机数

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

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

4、linux系统日志程序类型Top5

企业日志分析之linux系统message收集展示 _系统日志_04

主要是展示收集的日志信息里前5个程序名;我这5个都是docker服务器,所以docker日志有很多。

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

企业日志分析之linux系统message收集展示 _系统日志_05

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

6、linux系统日志数据

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

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

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

二、收集日志

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

1、配置rsyslog

默认rsyslog都安装了,所以只需要修改配置

在/etc/rsyslog.conf里添加

1
*.* @@localhost:8514

然后重启rsyslog

2、配置logstash

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
[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"
 
}
 
}

3、导入模板

导入顺序

1、Linux系统日志试图.json

2、Linux系统日志搜索.json

3、Linux系统日志Dashboard.json

其他的有问题可以留言。

本文出自 “吟—技术交流” 博客,请务必保留此出处http://dl528888.blog.51cto.com/2382721/1706204