频道栏目
首页 > 网络 > 其他 > 正文

Rsyslog介绍以及结合loganalyzer进行日志分析

2016-01-06 09:45:08           
收藏   我要投稿

1.syslog介绍:

日志服务在CentOS 5上默认为syslog,而6上全部升级为rsyslog。Rsyslog是syslog的增强版,提供了很多高级的特性。syslog由两个功能程序构成,klogd和syslogd,klogd记录Kernel产生的日志信息,而syslogd是普通的日志信息。除了一些高级特性,Rsyslog和syslog的整体框架基本一致。

2.Rsyslog的特性:

支持选择UDP|TCP协议传送日志文件;

支持SSL加密

多线程模型工作;

可以将日志放入关系型数据库中;

可以作为日志服务器接收其他服务器发来的日志;

3.日志的级别

日志的级别就是日志的记录等级,syslog将日志级别分为如下几个(低等级默认会包含高等级的日志信息):

debug 调试级别,所有信息都会记录
info 比debug级别稍高
notice 通知信息,比info级别高
warning 发出警告
err,error 出现错误
crit 比err更严重
alert 系统出现严重问题
emerg,panic 系统将要挂掉

 

4.syslog设施

syslog将不同的日志分为几个类,这些种类就称作设施:

auth 认证信息
authpriv 授权信息
cron 计划任务产生的信息
daemon 守护进程产生的信息
kern 内核产生的信息
lpr 打印的信息
mail 邮件相关的信息
mark 防火墙标记的信息
news 新闻组信息
security 安全相关的信息
syslog 系统日志
user 用户相关的信息
uucp unix间复制相关
local{0-7} 用户自定义的日志类,分为7个级别

 

5.rsyslog的配置:

rsyslog的配置文件是/etc/rsyslog.conf及/etc/rsyslogd/*.conf。

/etc/rsyslog.conf文件分为四个"区域":

MODULES syslog的模块
GLOBAL 全局定义,记录的格式等等
RULES 记录日志相关
begin forwarding rule 一些转发的记录信息

 

我们主要关心RULES区域,要想使rsyslog记录特定类、级别的日志,就需要在RULES中定义,格式为:

facility(设施).priority(日志级别)Target(日志输出的位置)

注:

日志级别、设施可以使用通配符:

*:所有级别

,:列表,例如:a,b,c是a、b、c三个级别

!:取反

记录的位置常用的大概有四种:

文件,如/var/log/message

用户,发送给指定的用户,*为所有用户

日志服务器:@172.16.10.1

管道:|COMMAND 交给特定的命令处理

例如:

mail.info/var/log/maillog记录mail类型中info及以上级别的日志信息
mail.=info/var/log/maillog只记录maill类型中info级别的日志信息
mail.!info/var/log/maillog记录mail类型中info以下级别的日志信息
mail.!=info/var/log/maillog记录mail类型中除了info级别的日志信息
*.info/var/log/maillog记录所有info及以上级别的日志信息
mail,news.info-/var/log/maillog记录mail类型、news类型中的info及以上级别的日志信息,并且以异步方式写入文件

 

二、配置rsyslog和loganalyzer结合工作:

1.介绍

loganalyzer是一款Web界面日志分析工具,可以分析mysql中的日志信息,由php编写,依赖于LAMP平台。要想将日志信息写入到mysql中,需要安装rsyslog-mysql工具,并启用rsyslog的模块。

 

2.安装LAMP及相关文件:

[root@localhost~]#yuminstall-yhttpdmysqlmysql-serverphpphp-mysqlrsyslog-mysql

3.导入rsyslog-mysql的sql文件(创建库、表)并创建一个用户:

[root@localhost~]#servicemysqldstart
[root@localhost~]#mysql-urootGRANTALLONSyslog.*TO'loganauser'@'localhost'IDENTIFIEDBY'redhat';
mysql>GRANTALLONSyslog.*TO'loganauser'@'127.0.0.1'IDENTIFIEDBY'redhat';

4.配置rsyslog加载ommysql模块(写入mysql数据库的模块):

[root@localhost~]#vim/etc/rsyslog.conf
在MODULES区域添加:
$ModLoadommysql
并启用以下两项:
$ModLoadimudp
$UDPServerRun514
[root@localhostloganalyzer]#servicersyslogrestart
Shuttingdownsystemlogger:[OK]
Startingsystemlogger:[OK]
[root@localhostloganalyzer]#

5.下载loganalyzer并解压到/var/www/loganalyzer目录进行配置:

[root@localhost~]#tar-xfloganalyzer-v3.6.1.tar.gz
[root@localhost~]#cdloganalyzer-3.6.1/
[root@localhostloganalyzer-3.6.1]#mvsrc//var/www/loganalyzer
[root@localhostloganalyzer-3.6.1]#mvcontrib/*/var/www/loganalyzer/
[root@localhostloganalyzer-3.6.1]#cd/var/www/loganalyzer/
[root@localhostloganalyzer]#chmod+xconfigure.shsecure.sh
[root@localhostloganalyzer]#./configure.sh
[root@localhostloganalyzer]#./secure.sh
[root@localhostloganalyzer]#rm-rfconfigure.shsecure.sh
[root@localhostloganalyzer]#chown-Rapache.apache*

 

6.配置httpd默认首页为index.php并启动:

[root@localhostloganalyzer]#vim/etc/httpd/conf/httpd.conf
DirectoryIndexindex.php
[root@localhostloganalyzer]#servicehttpdstart
Startinghttpd:[OK]
[root@localhostloganalyzer]#

7.打开http://hostname/loganalyzer/install.php安装之:

wKiom1aJET7A6nuCAACrG9lX9h0641.png

wKioL1aJEWLhtHfSAAC9yOq9FVY449.png

wKioL1aJEWLzUmgwAAD-dwM5Kuk764.png

wKiom1aJEUDzbP8uAAEL1jfS-Po603.png

wKiom1aJEUGCZjwLAADirb1y9kc363.jpg

wKioL1aJEWXiGvp_AAFlZfTsCQ4328.jpg

8.配置syslog将日志写入到mysql数据库:

[root@localhostloganalyzer]#vim/etc/rsyslog.conf
*.info:ommysql:127.0.0.1,Syslog,loganauser,redhat
[root@localhostloganalyzer]#servicersyslogrestart
Shuttingdownsystemlogger:[OK]
Startingsystemlogger:[OK]
[root@localhostloganalyzer]#

9.刷新网页查看日志已经有了两条记录:

wKiom1aJEnGgdHkLAAGE8KgJd3U792.png

相关TAG标签 日志
上一篇:纽约大街上的免费WiFi,终于铺起来了
下一篇:全新WiFi技术问世 更适合智能家庭和物联网
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站