设为首页 收藏本站
查看: 794|回复: 0

[经验分享] Apache+PHP+mysql+syslog-ng+php-syslog-ng统一管理日志

[复制链接]

尚未签到

发表于 2018-12-22 11:40:30 | 显示全部楼层 |阅读模式

  Apache+PHP+mysql+syslog-ng+php-syslog-ng统一管理日志


    1. 首先安装好LAMP这一个组合,在安装的过程中重点关注PHP的安装
  ./configure --prefix=/usr/local/php5 --enable-mbstring  --with-apxs2=/usr/local/apache2/bin/apxs  --with-mysql=/usr/local/mysql   --with-config-file-path=/usr/local/php5 --with-zlib
  make ;make install
  安装完成后:
  cp php-dist.ini /usr/localphp5/php.ini
  vi /usr/localphp5/php.ini
  修改:session.save_path = "/tmp"
  apachectl restart
Installation syslog-ng

下载php-syslog-ng

官方地址:http://sourceforge.net/projects/php-syslog-ng/

在解压路径找到作者提供的数据库模板,将其导入数据库,操作如下:

shell> mysql -uroot -p syslog< /your/tar/path/install/dbsetup.sql

这里需要先建立syslog库

下载syslog-ng server & clinet,官方地址:http://www.balabit.com

Configure syslog-ng

安装日志服务端,如:

1.rpm -ivh syslog-ng-3.0.9-1.rhel5.i386.rpm

2.vi /syslog-ng/etc /syslog-ng.conf.

  source s_all {
internal();

unix-stream(&quot;/dev/log&quot;);

file(&quot;/proc/kmsg&quot; program_override(&quot;kernel&quot;));

        udp(

                ip(put.your.server.ip)

                port(514)

        );

        tcp(

                ip(put.your.server.ip)

                port(514)

        );

};

destination d_mysql {

  pipe(&quot;/var/log/mysql.pipe&quot;
  template(&quot;INSERT INTO logs
  (host, facility, priority, level, tag, datetime, program, msg)
  VALUES ( '$HOST', '$FACILITY', '$PRIORITY', '$LEVEL', '$TAG', '$YEAR-$MONTH-$DAY $HOUR:$MIN:$SEC',
  '$PROGRAM', '$MSG' );\n&quot;) template-escape(yes));
  };

log {

  source(s_all);
  destination(d_mysql);
  };
以上内容也可以从php-syslog-ng中获得如:/your/tar/path/scripts/syslog.conf

3.创建管道文件,此文件主要作用是把syslog-ng接收到的日志信息内容转移至数据库中去。

vi /scripts/syslog2myssql.sh

#!/bin/bash


if [ ! -e /var/log/mysql.pipe ]

then

        mkfifo /var/log/mysql.pipe

fi

while [ -e /var/log/mysql.pipe ]

do

        mysql -u syslogfeeder --password=PW_HERE syslog < /var/log/mysql.pipe >/dev/null

done

sh /scripts/syslog2myssql.sh &

/etc/init.d/syslog-ng restart

以上内容也可以从php-syslog-ng中获得如:/your/tar/path/scripts/syslog2mysql.sh

在做完这里以后,可以登录数据库查看syslogs.logs表,此表就是记录接收到的日志。

  Installation syslog-ng-client(Add a log client)
  rpm -ivh syslog-ng-client-3.0.9-1.rhel5.i386.rpm
  vi /opt/syslog-ng/etc/syslog-ng.conf
  destination d_logserver { udp(&quot;your.log.server.ip&quot;);};
  log {
  source(s_local);
  destination(d_logserver);
  };
  /etc/init.d/syslog-ng restart
Installation php-syslog-ng

下载php-syslog-ng

官方地址:http://code.google.com/p/php-syslog-ng/downloads/list?q=label:Deprecated

解压至apache的网页目录如:/usr/local/apache/htdocs/syslog

Chown –R daemon.daemon /usr/local/apache2/htdocs/syslog

在IE输入http://yourserverip/syslog/install

根据页面的要求及提示输入数据库的密码等完成安装

完后访问http://yourserverip/syslog/index.php

注:在此第一步对应的页面有红色警告的话最好是解决完后再前进,以免导致莫名其妙的错误码出现,另外需要保证config/config.php是空白而且对于启用apache的程序用户(daemon)需要有写的权限,不然打开页面的时候就只会停留在帮助页面上。

  至此大功告成。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-654369-1-1.html 上篇帖子: 通过对php一些服务器端特性的配置加强php的安全 下篇帖子: PHP判断上传的否是图片
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表