LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端。它提供了对日志的简单浏览、搜索、基本分析和一些图表报告的功能。数据可以从数据库或一般的syslog文本文件中获取,所以LogAnalyzer不需要改变现有的记录架构。基于当前的日志数据,它可以处理syslog日志消息,Windows事件日志记录,支持故障排除,使用户能够快速查找日志数据中看出问题的解决方案。
LogAnalyzer 获取客户端日志会有两种保存模式,一种是直接读取客户端/var/log/目录下的日志并保存到服务端该目录下,一种是读取后保存到日志服务器数据库中,推荐使用后者。
LogAnalyzer 采用php开发,所以日志服务器需要php的运行环境,本文采用LAMP。
**
centos 6
服务端 192.168.245.144
客户端 192.168.245.135**
*
一:开始配置*
1.服务器端安装LAMP环境
[root@local ~] yum install httpd httpd-devel mysql mysql-devel mysql-server php* -y
作为依赖被安装:
apr-devel.x86_64 0:1.3.9-5.el6_9.1
apr-util-devel.x86_64 0:1.3.9-3.el6_0.1
cyrus-sasl-devel.x86_64 0:2.1.23-15.el6_6.2
expat-devel.x86_64 0:2.0.1-13.el6_8
openldap-devel.x86_64 0:2.4.40-16.el6
作为依赖被升级:
expat.x86_64 0:2.0.1-13.el6_8 openldap.x86_64 0:2.4.40-16.el6
完毕!
2.服务并加入开机启动
apache
[root@local ~] service httpd start
[root@local ~] chkconfig httpd on
[root@local ~] chkconfig httpd --list
httpd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
Mysql
[root@local ~] service mysqld start
[root@local ~] chkconfig mysqld on
[root@local ~] chkconfig mysqld --list
httpd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
[root@local ~] vim /var/www/html/index.php ^C
[root@local ~] cat /var/www/html/index.php
<?php
phpinfo()
?>
测试192.168.245.144 php
挂载/mnt
[root@local ~] mount /dev/sr0 /mnt/^C
[root@local ~] df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_local-lv_root
35G 7.6G 26G 23% /
tmpfs 427M 228K 427M 1% /dev/shm
/dev/sda1 477M 40M 412M 9% /boot
/dev/sr0 3.7G 3.7G 0 100% /media/CentOS_6.8_Final
/dev/sr0 3.7G 3.7G 0 100% /mnt
二:服务端安装及配置
1.安装rsyslog已经rsyslog连接mysql的模块
[root@local ~] rpm -ivh /mnt/Packages/rsyslog-5.8.10-8.el6.x86_64.rpm
[root@local ~] rpm -ivh /mnt/Packages/rsyslog-mysql-5.8.10-8.el6.x86_64.rpm
2.导入rsyslog-mysql数据库文件
[root@local ~] cd /usr/share/doc/rsyslog-mysql-5.8.10/
[root@local rsyslog-mysql-5.8.10] mysql -uroot -p123456 < createDB.sql
创建mysql用户
mysql> grant all on Syslog.* to rsyslog@'localhost' identified by '123456';
mysql> flush privileges;
5.配置服务端支持rsyslog-mysql模块,并开启UDP服务端口获取网内其它linux系统日志
[root@local ~] vim /etc/rsyslog.conf
#添加以下两行内容
$ModLoad ommysql
.
:ommysql:localhost,Syslog,rsyslog,123456
说明:localhost表示本地主机,Syslog为数据库名,rsyslog为数据库用户,123456位用户密码
开启相关日志模块
$ModLoad immark # immark为模块名,支持日志标记
$ModLoad imudp # imudp 为模块名,支持udp协议
$UDPServerRun 514 # 允许514端口接收使用UDP和TCP协议转发过来的日志
$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
*.* :ommysql:localhost,Syslog,rsyslog,123456
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
扩展:UDP协议,中文名是用户数据报协议。在网络中与TCP协议一样用于处理数据包,是一种无连接的协议。在OSI模型中,在第四层-传输层,处于IP协议的上一层。
重启rsyslog服务
[root@local ~] service rsyslog restart
三:客户端配置
1 安装rsyslog
挂载/mnt
[root@local ~] mount /dev/sr0 /mnt/^C
[root@local ~] df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_local-lv_root
35G 7.6G 26G 23% /
tmpfs 427M 228K 427M 1% /dev/shm
/dev/sda1 477M 40M 412M 9% /boot
/dev/sr0 3.7G 3.7G 0 100% /media/CentOS_6.8_Final
/dev/sr0 3.7G 3.7G 0 100% /mnt
[root@local ~] rpm -ivh /mnt/Packages/rsyslog-5.8.10-8.el6.x86_64.rpm
2 配置rsyslog客户端发送本地日志到服务器端
[root@local ~] vim /etc/rsyslog.conf
*.* @192.168.245.144 # 此行内容 添加到文件末尾服务器ip
重启服务
3 编辑/etc/bashrc,将客户端执行的所有命令写入系统日志中
[root@local ~] vim /etc/bashrc
文件底部添加一行,加入以下内容
export PROMPT_COMMAND='{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[
pwd
]"$msg"; }'
设置使其生效
[root@local ~] source !$
四: 测试Rsyslog Server是否可以正常接收Client端日志
客户端
server服务端
[root@local ~] tailf /var/log/messages
Mar 27 16:50:33 luxiang rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="8243" x-info="http://www.rsyslog.com"] start
Mar 27 16:50:33 luxiang root: [euid=root]:root pts/0 2020-03-27 16:37 (192.168.245.1):[/root]/etc/init.d/rsyslog restart
Mar 27 16:52:10 luxiang root: [euid=root]:root pts/0 2020-03-27 16:37 (192.168.245.1):[/root]vim /etc/bashrc
五:loganalyzer安装
[root@local ~] wget http://download.adiscon.com/loganalyzer/loganalyzer-3.6.5.tar.gz
[root@local ~] ls
loganalyzer-3.6.5.tar.gz
[root@local ~] tar zxvf loganalyzer-3.6.5.tar.gz
[root@local ~] cd loganalyzer-3.6.5
[root@local loganalyzer-3.6.5] mkdir /var/www/html/loganalyzer
[root@localloganalyzer-3.6.5] rsync -a src/* /var/www/html/loganalyzer/
六: 在浏览器中安装Logantlyzer
浏览器中访问 192.168.245.144/loganalyzer
提示没有配置文件,点击here 下一步
第一步,测试系统环境
点击next,下一步
没有错误就不用动
提示错误:缺少config.php文件,并且权限要设置为666,可以使用contrib目录下的configure.sh脚本生成。
查看configure.sh文件的内容 有就不用动
[root@local ~] cd loganalyzer-3.6.5
[root@local loganalyzer-3.6.5] cd contrib/
[root@local contrib] cat configure.sh
#!/bin/sh
touch config.php
chmod 666 config.php
需要在/var/www/html/loganalyzer/下创建config.php文件,并设置666权限
[root@local contrib] touch /var/www/html/loganalyzer/config.php
[root@local contrib] chmod 666 !$
[root@local contrib] ll /var/www/html/loganalyzer/config.php
-rw-rw-rw-. 1 root root 11438 3月 9 20:40 /var/www/html/loganalyzer/config.php
操作完上面的,执行Recheck,config.php文件可写,点击next进行下一步。
第三步:基础设置
第四:创建表
第五步:检查SQL结果
第六步:创建用户
第七:个系统日志source
查看Loganalyzer首页