LAMP之rsyslog+loganalyzer系统日志集中管理分析

作为运维人员,熟悉系统日志是一项基本功。本文将介绍centos6的系统日志rsyslog及loganalyzer工具。

简介

系统日志:记录历史事件,通常都是按时间顺序将发生的事件予以记录,linux上的日志分为syslogd(系统进程相关日志)和klogd(内核事件日志)

一、rsyslog日志系统配置参数

1、配置文件,以及配置文件的定义格式
/etc/rsyslog.conf  \\配置文件

日志定义格式: facility.priority    Target
    facility: 设施,从功能或程序上对日志进行分类,并由专门的工具负责记录日志;
      常用的facility:
              lpr: 打印相关的日志
              auth:认证相关的日志
              user:用户相关的日志
              cron:计划任务相关的日志
              kern:内核相关的日志
              mail:邮件相关的日志
              mark:标记相关的日志
              news:新闻相关的日志
              uucp:文件copy相关的日志
           daemon:系统服务相关的日志
           authpri: 授权相关的日志
           security:安全相关的日志
           local0-local7:自定义相关的日志信息(自定义时可以使用通配符)
                通配符:
                   *:所有
                   f1,f2,f3......:列表
                   !:取反
                
      priority:日志级别
        常用的日志级别:
          debug:   调试
          info:   消息
          notice: 注意
        warn,warning: 警告
          err,error: 错误
          crit: 严重级别
          alert: 需要立即修改该的信息
          emerg,panic: 内核崩溃,内核恐慌等严重的信息
           
          通配符:
             *:所有日志级别
             none:没有任何级别,也就是不记录日志信息
             
      
       Target:文件路径
            可以使用的有:
                ①/var/log/messages
                ②用户:*当前登录系统的所有用户
                ③日志服务器:@SERAVER_IP
                ④管道:| COMMAND
       事件格式:
             时间  主机  进程  事件本身
         
举例:
mail.info  /var/log/maillog:  比指定级别更高的日志级别,包括指定级别自身,保存到/var/log/maillog中
mail.=info  /var/log/maillog: 明确指定日志级别为info,保存至/var/log/maillog
mail.!info  /var/log/maillog: 除了指定的日志级别(info)所有日志级别信息,保存至/var/log/maillog
*.info      /var/log/maillog: 所有facility的info级别,保存至/var/log/maillog
mail.*     /var/log/maillog:  mail的所有日志级别信息,都保存至/var/log/maillog
mail.notice;news.info  /var/log/maillog: mail的notice以上记得日志级别和news的info以上的级别保存至/var/log/maillog
mail,news.crit  -/var/log/maillog:  mail和news的crit以上的日志级别保存/var/log/maillog中;“-”代表异步模式

二、实验环境

主机名 IP地址 负责
www.jcwtime.hk 192.168.10.100 收集日志,MySQL
c1.jcwtime.hk 192.168.10.101 web

注意:所有服务器或客户端关闭selinux、iptables

2.1启用日志服务器接受其他服务器(Web)日志

---日志服务器(服务器)---

编辑配置文件,去掉注释并重启服务
[root@www ~]# vim /etc/rsyslog.conf
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
[root@www ~]# service rsyslog restart

---Web(客户端)---

编辑配置文件,注释新添规则并重启服务
[root@C1 ~]# vim /etc/rsyslog.conf
#*.info;mail.none;authpriv.none;cron.none                /var/log/messages
*.info;mail.none;authpriv.none;cron.none                @192.168.10.100
[root@C1 ~]# service rsyslog restart

在Web(客户端)测试安装zsh,日志服务器可查看到日志
[root@www ~]# tail /var/log/messages 
Aug  5 11:21:37 C2 yum[29781]: Installed: zsh-4.3.11-4.el6.centos.2.x86_64

2.2配置将日志信息存储到数据库

---日志服务器(服务器)---
安装mysql及驱动
[root@www ~]# yum install -y mysql-server rsyslog-mysql
[root@www ~]# rpm -ql rsyslog-mysql
/lib64/rsyslog/ommysql.so \\rsyslog连接mysql的驱动模块
/usr/share/doc/rsyslog-mysql-5.8.10 \\ rsyslog的文档
/usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql  \\rsyslog的数据库以及表的各项定义,直接导入数据即可使用
[root@www ~]# service mysqld start

将生成的createDB.sql导入mysql数据库
[root@www ~]# mysql -uroot -p  SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| Syslog             |
| mysql              |
| test               |
+--------------------+
4 rows in set (0.05 sec)
使用Syslog:
mysql> USE Syslog;
查看表:
mysql> SHOW TABLES;
+------------------------+
| Tables_in_Syslog       |
+------------------------+
| SystemEvents           |
| SystemEventsProperties |
+------------------------+
2 rows in set (0.01 sec)
创建用户、密码并授权本地 访问Syslog数据库
mysql> GRANT ALL ON Syslog.* TO 'rsysloguser'@'127.0.0.1' IDENTIFIED BY 'rsyslogpass';
Query OK, 0 rows affected (0.01 sec)
刷新权限:
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

配置ryslog.conf文件添加模块ommysql,添加规则输出到本地数据库Syslog,重启服务
[root@www ~]# vim /etc/rsyslog.conf

#### MODULES ####
$ModLoad ommysql
$ModLoad imuxsock
$ModLoad imklog

#### RULES ####
#*.info;mail.none;authpriv.none;cron.none                /var/log/messages
*.info;mail.none;authpriv.none;cron.none                :ommysql:127.0.0.1,Syslog,rsysloguser,rsyslogpass
[root@www ~]# service rsyslog restart

Web(客户端)测试安装zsh,日志服务器tail /var/log/messages不会有zsh安装日志,而是输出到mysql
mysql> select * from SystemEvents\G;
*************************** 4. row ***************************
                ID: 4
        CustomerID: NULL
        ReceivedAt: 2016-08-05 14:04:52
DeviceReportedTime: 2016-08-05 14:04:52
          Facility: 1
          Priority: 6
          FromHost: C2
           Message:  Installed: zsh-4.3.11-4.el6.centos.2.x86_64
        NTSeverity: NULL
        Importance: NULL
       EventSource: NULL
         EventUser: NULL
     EventCategory: NULL
           EventID: NULL
   EventBinaryData: NULL
      MaxAvailable: NULL
         CurrUsage: NULL
          MinUsage: NULL
          MaxUsage: NULL
        InfoUnitID: 1
         SysLogTag: yum[32658]:
      EventLogType: NULL
   GenericFileName: NULL
          SystemID: NULL
4 rows in set (0.00 sec)

2.3由于loganalzyer提供的动态网页,所以我们要安装httpd和php

[root@www ~]# yum -y install httpd php php-mysql
[root@www ~]# service httpd start

2.3.1访问web

LAMP之rsyslog+loganalyzer系统日志集中管理分析_第1张图片
1434074590797982.png
编辑测试页并访问php
[root@www ~]# vim /var/www/html/index.php

2.3.2访问web

LAMP之rsyslog+loganalyzer系统日志集中管理分析_第2张图片
QQ截图20160805141757.png

2.4配置loganalyzer日志分析工具,便于日常维护

[root@www ~]# mkdir /var/www/html/loganalyzer
[root@www ~]# cd /var/www/html/loganalyzer
[root@www loganalyzer]# cp -a /root/loganalyzer-3.6.5/src/* .
[root@www loganalyzer]# cp -a /root/loganalyzer-3.6.5/contrib/* .
[root@www loganalyzer]# chmod +x ./configure.sh 
[root@www loganalyzer]# chmod +x ./secure.sh 
[root@www loganalyzer]# ./configure.sh 
[root@www loganalyzer]# ./secure.sh 
[root@www loganalyzer]# chmod 666 config.php 
[root@www loganalyzer]# chown -R apache.apache ./*

2.4.1访问网页安装loganalyzer

LAMP之rsyslog+loganalyzer系统日志集中管理分析_第3张图片
1.png
LAMP之rsyslog+loganalyzer系统日志集中管理分析_第4张图片
2.png
LAMP之rsyslog+loganalyzer系统日志集中管理分析_第5张图片
3.png
LAMP之rsyslog+loganalyzer系统日志集中管理分析_第6张图片
4.png
LAMP之rsyslog+loganalyzer系统日志集中管理分析_第7张图片
5.png
LAMP之rsyslog+loganalyzer系统日志集中管理分析_第8张图片
6.png
LAMP之rsyslog+loganalyzer系统日志集中管理分析_第9张图片
7.png
LAMP之rsyslog+loganalyzer系统日志集中管理分析_第10张图片
8.png

你可能感兴趣的:(LAMP之rsyslog+loganalyzer系统日志集中管理分析)