Centos7.9 使用rsyslog + LogAnalyzer搭建日志服务器

一、安装LAMP环境

二、安装rsyslog

查看是否已安装rsyslog

rpm -qa | grep rsyslog

导入数据库

cd /usr/share/doc/rsyslog-8.24.0/

mysql -uroot -p<mysql-createDB.sql

创建用户

mysql -uroot -p

grant all privileges on Syslog.* to rsyslog@localhost identified by '<数据库密码>';

flush privileges;

备份rsyslog配置文件

cp /etc/rsyslog.conf /home/cgyxt/syslog/

修改rsyslog配置文件

vim /etc/rsyslog.conf

在#### MODULES ####下:

取消以下两行注释(使用UDP端口514接收日志。UDP面向无连接,适用于获取内网中的设备日志)

$ModLoad imudp

$UDPServerRun 514

增加以下内容(加载mysql连接模块,设置数据库参数)

$ModLoad ommysql

*.* :ommysql:localhost,Syslog,rsyslog,<数据库密码>

rsyslog默认将日志都写入本地文件/var/log/messages,查看验证:

tail -f /var/log/messages

(显示/var/log/messages文件后10行,文件有变化就显示出来)

也可以将本地日志文件按日期-IP地址归档存放:

在/etc/rsyslog.conf文件中#### GLOBAL DIRECTIVES ####下加入以下内容:

$template Remote,"/var/log/%$YEAR%-%$MONTH%-%$DAY%/%fromhost-ip%.log"

# 设置远程日志存放路径和文件格式

:fromhost-ip, !isequal, "127.0.0.1" ?Remote  # 如果是本机日志则不记录

修改完/etc/rsyslog.conf后需要重启rsyslog服务

systemctl restart rsyslog.service

防火墙永久开放UDP 514端口

 firewall-cmd --add-port=514/udp --permanent

 firewall-cmd --reload

检查数据库中是否已经出现本机日志,有则连接成功

USE Syslog;

select * from SystemEvents;

三、安装loganalyzer

loganalyzer官方网站下载: Download Archives - Adiscon LogAnalyzer

解压

tar -zxvf loganalyzer-4.1.13.tar.gz

将安装包中的src文件夹拷贝至apache服务目录,并重命名为syslog

cp -r loganalyzer-4.1.13/src/ /var/www/html/syslog

将安装包contrib文件夹中的两个文件拷贝至syslog网站根目录中

cp -r loganalyzer-4.1.13/contrib/* /var/www/html/syslog/

将两个可执行文件增加a+x权限

 cd /var/www/html/syslog/

chmod +x configure.sh secure.sh

运行configure.sh,会生成一个空白的config.php文件

./configure.sh

访问IP:端口/syslog,报错点击"here",使用向导进行安装

点击Next,在Step 3 中:

(可选)开启用户数据库选项,填写数据库信息:

Enable User Database: Yes

Database Name: Syslog

Database User: rsyslog

Database Password: 

Require User to be logged in :Yes

在Step7中配置日志源:

Source type: MYSQL Native

Select View: Eventlog Fields

Database Name: Syslog

Database Tablename: 按需配置存放日志的数据库表,这里配置为默认的SystemEvents

Database User: rsyslog

Database Password: 

Enable Row Counting: Yes

注:loganalyzer中文乱码解决方法:

备份配置文件

cp /var/www/html/syslog/include/functions_common.php /home/cgyxt/syslog/

修改配置文件

vim /var/www/html/syslog/include/functions_common.php

找到含有return htmlentities字段的行;

return htmlentities($myStr, ENT_NOQUOTES, $content['HeaderDefaultEncoding']);// "UTF-8");

修改为:

return htmlentities($myStr, ENT_NOQUOTES, $content['HeaderDefaultEncoding']), "UTF-8");

保存

重启apache

systemctl restart httpd

进入loganalyzer,将Admin Center>Global Options Only>Default character encoding改为"utf-8",完成后点击send changes。

四、配置客户端上送日志

华为交换机S5700:

info-center loghost 日志服务器IP

猜你喜欢

转载自blog.csdn.net/N71FS1/article/details/128049058
今日推荐