ng+LogZilla搭建中央日志服务器(3)

其中需要注意:

MySQL User Name:填入数据库管理用户,其必须有创建数据库和分派权限的能力;

MySQL Password:数据库管理用户的密码;

(可以使用 set password=password('密码');flush privileges;)

MySQL Database Name:php-syslog-ng使用的数据库命令,安装程序会使用上面的用户自动创建;

MySQL Port:数据库使用的端口

MySQL Table Prefix:表的前缀,但不要使用'old_',其代表备份表;

Syslog User Name:php-syslog-ng用这个用户读取数据库信息;

Syslog User Password:其密码;

Syslog Admin Name:php-syslog-ng用这个用户写入数据库信息;

Syslog Admin Password:其密码;

Drop Existing Tables:是否删除已存在的表;

Backup Old Tables:是否备份旧的表;

Install Sample Data:是否安装示例数据;

Install CEMDB Data:是否安装用于收集Cisco ERROR TABLE的数据。

如果你选择安装CEMDB数据,这需要花费一定的时间:

输入网页的标题:

输入php-syslog-ng的管理信息:

可输入管理员的Email地址,以及管理员密码。

php-syslog-ng会自动创建一个随机密码,及时修改。

安装完成,并会提示你管理员的信息:

至此Web部分已经完成。
但因为,syslog-ng还未把数据导向mysql,所以,此时网页中并没有数据的。



可能遇见报时区不正确,修改/etc/php.ini,添加

date.timezone = "Asia/Chongqing"

重启httpd服务



修改脚本路径

cd /var/www/html/php-syslog-ng/scripts

sh fixpaths.sh

注:若php-syslog-ng所在路径有html,需要修改脚本。

配置计划任务

若使用php-syslog-ng对日志进行集中管理,其数据量可能是相当巨大的,必须考虑日志循环的问题。可以使用计划任务实现。

配置计划任务
使用crontab -e加入:

# PHP-Syslog-NG

@daily php /var/www/html/php-syslog-ng/scripts/logrotate.php >> /var/log/php-syslog-ng/logrotate.log

@daily find /var/www/html /php-syslog-ng/html/jpcache/ -atime 1 -exec rm -f '{}' ';'

0,5,10,15,20,25,30,35,40,45,50,55 * * * * php /var/www/html /php-syslog-ng/scripts/reloadcache.php >> /var/log/php-syslog-ng/reloadcache.log

※注意:

1、请把运行dbgen.pl的命令删除,该脚本只是用于产生演示数据,详见后面说明。
2、执行php脚本的时候可能会包oci8.so错误,后面也有说明。
3、原find语句存在Bug,请加入-type f选项,否则会报如下的错误:
rm: cannot remove `/var/www/html/php-syslog-ng/html/jpcache/': Is a directory


配置日志循环

# cp /var/www/html/php-syslog-ng/scripts/contrib/system_configs/logrotate.d /etc/logrotate.d/php-syslog-ng

至此,php-syslog-ng已经全部配置完成

防火墙开放服务端口

#service iptables start

/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT



#/etc/init.d/iptables save

#/etc/init.d/iptables status

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/555263ddbc3ad2305f9831f69ffb7d5a.html