Linux 之 rsyslog+mysql+LogAnalyzer 日志收集系统

   作者:邓聪聪

  LogAnalyzer 是一个 syslog 和其他网络事件数据的 Web 前端工具,提供简单易用的日志浏览、搜索和基本分析以及图表显示

  由于公司部分项目需求使用日志记录系统,随笔记录

1:在rsyslog服务器上部署 LAMP环境。

[root@Log_server ~]# yum -y install wget httpd mysql mysql-server php php-mysql postgresql postgresql-server php-postgresql php-pgsql php-devel gd gd-devel php-gd
[root@Log_server ~]# /etc/init.d/mysqld start
[root@Log_server ~]# /etc/init.d/httpd start

2:安装rsyslog 连接MySQL数据库的模块

[root@Log_server ~]# yum install rsyslog-mysql –y

  导入rsyslog-mysql 数据库文件

[root@Log_server ~]# cd /usr/share/doc/rsyslog-mysql-5.8.10/
[root@Log_server rsyslog-mysql-5.8.10]# mysql -uroot  < createDB.sql
[root@Log_server rsyslog-mysql-5.8.10]# mysql
mysql>show databases;
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| Syslog             |
| mysql              |
| test               |
+--------------------+
4 rows in set (0.00 sec)

mysql> mysql> show tables;
+------------------------+
| Tables_in_Syslog       |
+------------------------+
| SystemEvents           |
| SystemEventsProperties |
+------------------------+
13 rows in set (0.00 sec)

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

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

  

Bye
[root@Log_server ~]# grep -v '^#' /etc/rsyslog.conf |grep -v  '^$'
$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 imudp
$UDPServerRun 514
$ModLoad ommysql       #启动rsyslog的数据库模块  
*.* :ommysql:localhost,Syslog,rsyslog,heju@.com    #连接数据库的信息
========以上两行是需要插入的内容
$ModLoad imtcp
$InputTCPServerRun 514
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
$IncludeConfig /etc/rsyslog.d/*.conf
*.info;mail.none;authpriv.none;cron.none                /var/log/messages
authpriv.*                                              /var/log/secure
mail.*                                                  -/var/log/maillog
cron.*                                                  /var/log/cron
*.emerg                                                 *
uucp,news.crit                                          /var/log/spooler
local7.*                                                /var/log/boot.log

4:配置http下的配置文件,编辑/etc/httpd/conf/httpd.conf,在</IfModule>行增加index.php

  

DirectoryIndex index.html index.php
</IfModule>

5:安装LogAnalyzer

  

[root@Log_server ~]# wget http://download.adiscon.com/loganalyzer/loganalyzer-3.6.5.tar.gz
[root@Log_server ~]# ll
total 1052
-rw-------. 1 root root    1271 Jan 11 23:27 anaconda-ks.cfg
-rw-r--r--. 1 root root    8837 Jan 11 23:27 install.log
-rw-r--r--. 1 root root    5770 Jan 11 23:27 install.log.syslog
-rw-r--r--  1 root root 1046957 Oct  9  2013 loganalyzer-3.6.5.tar.gz
[root@Log_server ~]# tar -xf loganalyzer-3.6.5.tar.gz
[root@Log_server ~]# cd loganalyzer-3.6.5
[root@Log_server loganalyzer-3.6.5]# ll
total 104
-rw-rw-r--  1 root root 44027 Oct  9  2013 ChangeLog
drwxrwxr-x  2 root root  4096 Oct  9  2013 contrib
-rw-rw-r--  1 root root 35497 Oct  9  2013 COPYING
drwxrwxr-x  2 root root  4096 Oct  9  2013 doc
-rw-rw-r--  1 root root  8449 Oct  9  2013 INSTALL
drwxrwxr-x 14 root root  4096 Oct  9  2013 src
[root@Log_server loganalyzer-3.6.5]# cp src/* /var/www/html/
[root@Log_server loganalyzer-3.6.5]# touch config.php
[root@Log_server loganalyzer-3.6.5]# chmod 666 config.php

6:后端的操作大功告成,接下来就是前端web的配置了

  浏览器输入日志服务器IP:IP/install.php,完成安装,填写对应的参数IP

  这里就不一一贴图了,主要注意填数据库的几个参数

  source type 需要修改成mysql native 源,随后填写mysql相关信息,注意(Database Tablename 处默认是首字母小写的,正确应该是SystemEvents  !!!)

7:客户端的配置模式

liunx系统设备:

1 检查rsyslog 是否安装

rpm -qa|grep rsyslog #默认都是安装的

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

 vi /etc/rsyslog.conf

*.* @服务器IP

华为交换机客户端配置:

[Sysname] info-center enable     #开启信息中心
[Sysname] info-center loghost 192.168.100.100 channel loghost     #指定向日志主机输出日志信息的通道为 loghost 通道
[Sysname] info-center source default channel loghost debug state off log state off trap state off     #关闭所有模块日志主机的 log、trap、debug 的状态(注意:由于系统对各通道允许输出的系统信息的缺省情况不一样,所以配置前必须将所有模块的需求通道(本例为loghost )上log、trap、debug 状态设为关闭,再根据当前的需求配置输出相应的系统信息。可以用display channel 命令查看通道的状态)。
[Sysname] info-center source default channel loghost log level informational     #允许输出信息的模块为所有模块 source:default
display channel loghost     #查看通道状态

posted @ 2019-01-21 11:49  邓聪聪  阅读(744)  评论(0编辑  收藏  举报