基于主机的管理一般需要收集服务器的日志信息用于及时发现错误,处理故障。
搭建linux下的集中日志服务器的程序一般可以用syslog,rsyslog,syslog-ng,还有scribe和fluentd等。
基本每一种方式都是服务器端和客户端的模式。
一般syslog,syslog-ng,rsyslog用于收集系统日志,scribe和fluentd用于收集业务日志,rsyslog和syslog-ng也可以收集业务日志,并可定制和过滤、筛选。LogAnalyzer和LogZilla是分析系统日志,并用web界面展示的的工具,一般只用在syslog,syslog-ng,rsyslog日志系统中。
如下是基于Centos5的rsyslog+mysql+phplogcon的安装,安装前确认安装有EPEL源。
安装rsyslog以及rsyslog-mysql接口支持 yum
install
rsyslog rsyslog-mysql
安装数据库以及web程序
yum
install
mysql-server
yum
install
httpd php php-mysyql php-gd
service mysqld status || service mysqld start
创建rsyslog写入数据需要的库文件,路径可能根据版本有所不同
mysql < /usr/share/doc/rsyslog-mysql-2.0.8/createDB.sql 创建账户和密码(确保一致/etc/rsyslog.conf and /path/top/phplogcon/config.php )
mysql> grant all on Syslog.* to syslog@localhost identified by 'mypass'; mysql> flush privileges ; vi /etc/rsyslog.conf # Log to Mysql Settings $ModLoad ommysql *.* :ommysql:localhost,Syslog,syslog,phplogcon #Standard Redhat syslog settings *.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
启动rsyslog:
service syslog stop service rsyslog start