CentOS 6.5下利用Rsyslog+LogAnalyzer+MySQL部署日志服务器

来源:互联网 发布:淘宝旺旺官方买家 编辑:程序博客网 时间:2024/04/30 19:56

原文:http://www.cnblogs.com/mchina/p/linux-centos-rsyslog-loganalyzer-mysql-log-server.html

一、简介

LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端。它提供了对日志的简单浏览、搜索、基本分析和一些图表报告的功能。数据可以从数据库或一般的syslog文本文件中获取,所以LogAnalyzer不需要改变现有的记录架构。基于当前的日志数据,它可以处理syslog日志消息,Windows事件日志记录,支持故障排除,使用户能够快速查找日志数据中看出问题的解决方案。

LogAnalyzer 获取客户端日志会有两种保存模式,一种是直接读取客户端/var/log/目录下的日志并保存到服务端该目录下,一种是读取后保存到日志服务器数据库中,推荐使用后者。


二、系统环境

Rsyslog Server OS:CentOS 6.5

Rsyslog Server IP:192.168.1.107

Rsyslog 版本:rsyslog-5.8.10-8.el6.i686

LogAnalyzer 版本:LogAnalyzer 3.6.5 (v3-stable)

防火墙已关闭/iptables: Firewall is not running.

SELINUX=disabled

Rsyslog Client OS:CentOS 6.5

Rsyslog Client IP:192.168.1.108

Server端和Client端都实现装好LNMP环境


三、检查并安装服务器端软件

导入rsyslog-mysql 数据库文件

# cd /usr/share/doc/rsyslog-mysql-5.8.10/

# mysql -uroot -p123456 < createDB.sql

查看做了哪些操作

# mysql -uroot –p

mysql> show databases;

mysql> show tables;


导入数据库操作创建了Syslog 库并在该库中创建了两张空表SystemEvents 和SystemEventsProperties。


创建rsyslog 用户在mysql下的相关权限

# mysql -uroot –p

mysql> grant all privileges on Syslog.* to rsyslog@localhost identified by '123456';

mysql> flush privileges;

mysql> exit


配置服务端支持rsyslog-mysql 模块,并开启UDP服务端口获取网内其他LINUX系统日志

# vi /etc/rsyslog.conf

$ModLoad ommysql
*.* :ommysql:localhost,Syslog,rsyslog,123456

在 #### MODULES #### 下添加上面两行。

说明:localhost 表示本地主机,Syslog 为数据库名,rsyslog 为数据库的用户,123456为该用户密码。


开启相关日志模块

# vi /etc/rsyslog.conf

$ModLoad immark    #immark是模块名,支持日志标记

$ModLoad imudp    #imupd是模块名,支持udp协议

$UDPServerRun 514    #允许514端口接收使用UDP和TCP协议转发过来的日志


重启rsyslog 服务

# /etc/init.d/rsyslog restart


四、配置客户端

检查rsyslog 是否安装

# rpm -qa|grep rsyslog

配置rsyslog 客户端发送本地日志到服务端

# vi /etc/rsyslog.conf

*.* @192.168.1.107

行尾新增上面这行内容,即客户端将本地日志发送到服务器。重启rsyslog 服务

# /etc/init.d/rsyslog restart

编辑/etc/bashrc,将客户端执行的所有命令写入系统日志/var/log/messages中。

# vi /etc/bashrc

在文件尾部增加一行

export PROMPT_COMMAND='{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg"; }'

设置其生效

# source /etc/bashrc

客户端配置完毕。


五、测试Rsyslog Server是否可以正常接受Client端日志

Client 端测试:


Server 端侦测:


说明接收正常,包括你重启机器的一些Log都可以查看到。


六、下载LogAnanlyzer

# wget http://download.adiscon.com/loganalyzer/loganalyzer-3.6.5.tar.gz

# tar zxf loganalyzer-3.6.5.tar.gz

# cd loganalyzer-3.6.5

# mkdir -p /home/wwwroot/default/loganalyzer

# rsync -a src/* /home/wwwroot/default/loganalyzer/


七、在浏览器安装向导中安装LogAnalyzer


打开浏览器访问:http://192.168.1.107/loganalyzer/


提示没有配置文件,点击 here 利用向导生成。


第一步,测试系统环境


点击 “Next”,进入第二步。

提示错误:缺少config.php 文件,并且权限要设置为666,可以使用contrib目录下的configure.sh 脚本生成。

或者在/home/wwwroot/default/loganalyzer/ 下创建config.php 文件,并设置其权限为666。

# touch /home/wwwroot/default/loganalyzer/config.php

# chmod 666 /home/wwwroot/default/loganalyzer/config.php

做完上面的操作之后,执行 ReCheck 操作,config.php 文件可写,点击 Next 进入下一步。



第三步,基础配置


在User Database Options 中,填入上面设置的参数,然后点击 Next.


第四步,创建表

点击 Next 开始创建表。

第五步,检查SQL结果


第六步,创建管理用户


第七步,创建第一个系统日志source.



第八步,完成




0 0