首页 > 代码库 > rsyslog日志系统浅析

rsyslog日志系统浅析

RsyslogCentOS6.X自带的一款系统日志工具,相对与Centos5syslog,有了很大的提升,拥有如下特性:

1.支持多线程

2.支持TCP,SSL,TLS,RELP等协议

3.支持将日志写入MySQL, PGSQL, Oracle等多种关系型数据中

4.拥有强大的过滤器,可实现过滤系统信息中的任意部分

5.可以自定义日志输出格式

6.适用于企业级的日志记录需求

今天,我们就来了解一下Rsyslog的使用以及利用loganalyzer来通过网页管理日志.

 

 

1.rsyslog的配置文件

Rsyslog的配置文件为/etc/rsyslog.conf,其中共分为三块内容:

A.定义模块相关信息

#### MODULES ####

$MmodLoad imuxsock #用于加载模块

.....

B定义全局的配置信息

#### GLOBAL DIRECTIVES ####

$IncludeConfig /etc/rsyslog.d/*.conf#用于加载其他的配置文件,实现分段管理

 

C.定义日志记录规则

#### RULES ####

*.info;mail.none;authpriv.none;cron.none/var/log/messages #定义各类型日志存放位置

2.rsyslog规则定义格式:

facility.priority Targetauth         #pam产生的日志,认证日志

#===============facility(设施)包含以下几种=====================

auth        #认证日志

authpriv     #认证授权认证

cron        #任务计划相关日志

kern         #内核相关日志

lpr          #打印

mail         #邮件日志

mark(syslog) #rsyslog服务内部的信息,时间标识

news         #新闻组

user         #用户程序产生的相关信息

uucp         #一个古老的协议

local 0~7    #用户自定义

#-------------------------------------------------------------

facilicy可以使用以下通配符:

*:所有设施

f1,f2,f3.....:列表

!:取反

#=====================priority(级别)包含如下级别=====================

debug#由上到下级别越来越高,

info#同时,日志的内容也越来越少

notice#只会记录更加重要的信息

warn, warning#可以使用如下通配符:

err, error#*:代表所有级别

crit#none:代表没有任何级别

alert

emerg, panic

#------------------------------------------------------------------

指定级别用法:

mail.info :记录info及以上级别的日志,包含级别本身

main.=info:仅记录info级别的

mail.!info:除了info级别均记录

mail.news.info

mail.info;auth.error

#====================Target(目标)=================

/path/to/file#路径

*#打印到已登录的用户界面

@ServerIP#发送到日志服务器

|COMMAND#发送到指定目录进行处理

3.日志服务器的搭建

现在由两台服务器host1(172.16.21.101)host2(172.16.21.102),需要将host1的部分日志存储到host2,实现过程如下

(1).host1上编辑/etc/rsyslog.conf文件,编辑 RULES 块下的如下内容

*.info;mail.none;authpriv.none;cron.none                @172.16.21.102

(2).host2上编辑/etc/rsyslog.conf文件,MODULES块下添加如下内容

$ModLoad imudp

$UDPServerRun 514

(3).分别重启host1host2的日志服务

wKiom1P0pIrQj4duAABQsY5kXDg979.jpg 

------------------------------------------------

测试:

host1上通过yum安装一个软件

[root@host1 ~]# yum install zsh -y

Host1的日志已经传送到了host2

wKioL1P0paSSXJ9PAAGlT7cXYps484.jpg 

4.搭建基于loganalyzerweb-gui接口,实现对日志的可视化管理

a) 搭建LAMP平台

wKiom1P0pI2QkAelAAA079j8S1c078.jpg 

b) 配置mysql支持rsyslog

wKioL1P0paWjWt2IAAAeJekPvew611.jpg 

wKiom1P0pI2QSJRcAAA5AMZ0I5A520.jpg 

wKioL1P0pabwNdfJAACadNvTNFA000.jpg 

rsyslog.conf文件中加载ommysql模块并将特定数据库内容写入mysql

#### MODULES ####

.........

$ModLoad ommysql

#### RULES ####

........................

*.info;mail.none;authpriv.none;cron.none        :ommysql:127.0.0.1,Syslog,syslog,123456

--------------------------------

wKiom1P0pI6iQjy3AAAiN9gsxF0712.jpg 

在数据库中查看,数据已经写入数据库中

wKioL1P0paaT0mBdAAHTK32gBdo208.jpg 

c) 下载loganalyzer源码包并解压到root的家目录

wKiom1P0pI-S1WjjAABF-qSsXUs337.jpg 

d) src目录下的所有内容复制到httpd的根目录,并赋予权限

wKiom1P0pI_wcDrxAABgukVVvPQ249.jpg 

wKioL1P0pafSVewaAABMZxlpJKI917.jpg 

e) 通过网页访问host2http服务器,并按提示进行安装

wKiom1P0pJDhIOBZAACHkUo1tIY827.jpg 

wKioL1P0pamCmVw5AAFJGF7nO10055.jpg 

此时,安装已经成功!

wKiom1P0pJKQNwVWAAFxpJOfHCQ830.jpg 



本文出自 “淡淡” 博客,请务必保留此出处http://dddbk.blog.51cto.com/6837943/1542807