rsyslog日志管理

    日志:一些历史事件按时间序列将其记录,方便查错以及方便核实所发生的事件。

rsyslog的特点:多线程;强大的过滤功能,可实现过滤系统信息中的任意部分;自定义输出格式;适用于企业级别日志记录需求。

系统对指定设施定义了八个消息级别分别是:debug(调试级),info(通知级),notice(注意级别),warn(警告级别),err(错误级别),crit(临界级别),alert(警戒级别),emerg(致命级别)。可见这些级别是由低到高。

在此借助主机(ip172.16.100.90)配置rsyslog服务器。在 rsyslog的主配置文件 /etc/rsyslog.conf 中。

# Log all the mail messages in one place.

mail.*            -/var/log/maillogmail.*  表示邮件的所有信息,后面指向的存储路径,有个“-”表示启用异步。如果配置文件中出现“mail.info”表示指定info级别以及更高所有级别。若出现mail.=info表示指定info级别,若是mail.!info表示除了info级别。对应级别还会出现“*”,“none”表示任何级别和没有级别。

下面看一下主配置文件的modules部分。

#### MODULES ####

 

$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)

$ModLoad imklog   # provides kernel logging support (previously done by rklogd)

#$ModLoad immark  # provides --MARK-- message capability

$ModLoad ommysql

 

# Provides UDP syslog reception

$ModLoad imudp

$UDPServerRun 514    //表示允许514端口接收使用udp协议转发来的日志

 

# Provides TCP syslog reception

$ModLoad imtcp

$InputTCPServerRun 514     //表示允许514端口接收使用TCP协议转发来的日志

rules模块中

*.info;mail.none;authpriv.none;cron.none                /var/log/messages  //表示记录所有类型的info及以上级别信息到 /var/log/messages,但不包括mailauthprivcron的信息

    接下来实现一下rsyslog支持将日志存储于MySQL服务器中。

    1、安装好mysql数据服务;

     #  yum -y install mysql mysql-server

2、安装rsyslog-mysql包;

 # yum -y install rsyslog-mysql

3、创建rsyslog依赖的数据库

     # mysql < /usr/share/doc/rsyslog-5.8.10/createDB.sql

4、配置rsyslog启用模块,在#### Modules ####中增加$Modload ommysql.

####rules####段中定义记录日志信息于数据库中增加下面一行

*.info;mail.none;authpriv.none;cron.none :ommysql:127.0.0.1,Syslog,rsysloguser,rsyslogpass

通过webGUI展示日志信息,借助loganalyzer工具,具体操作如下

# yum -y install httpd php php-mysql php-gd

# tar xf loganalyzer-3.6.5.tar.gz

# mkdir /var/www/html/loganalyzer

# cp -r loganalyzer-3.6.5/src/* /var/www/html/loganalyzer/

# cp -r loganalyzer-3.6.5/contrib/* /var/www/html/loganalyzer/

# cd /var/www/html/loganalyzer/

# chmod +x configure.sh secure.sh

# ./configure.sh

# ./secure.sh

# chmod 666 config.php

# chown -R apache.apache ./*

配置成功之后则可访问http//172.16.100.90/loganalyzer

详细日志信息如下