如何设置PHP日志以转到远程服务器?
我们将进行部署设置,我们将拥有许多服务器,其中大部分服务器在流量上升时自动添加到负载均衡器.这种设置的问题在于,如果一个开发人员需要拖尾日志来解决问题,他将不得不在每台服务器上打开一个控制台,由于开发人员通常不知道我们可能会使用多少服务器,因此这很复杂当时有功能.
如果开发人员可以在一台服务器中找到所有日志 – 比如我们的部署服务器,那么故障排除变得更加容易. 为此,我考虑使用cron设置从每台FE计算机到部署服务器的推送,该计划将复制我们的部署服务器上的日志.这种方法存在两个问题: >有1分钟的延迟,因为crons不能更频繁地运行. 为了解决这个问题,我正在研究一种连接error_log或PEAR Log以将日志直接发送到我们的部署服务器的方法,该服务器会将其实时记录到/ var / log /中的本地位置. 谁知道我怎么配置这个?或者也许是一项服务来实现这一目标? 我们的服务器都是Ubuntu 10.04 LTS,我们在AWS的EC2实例上运行这些服务器.我们的PHP版本是5.3.
您可以做的是登录自定义syslog通道,该通道写入中央日志记录服务器.
php.ini中 error_log = syslog php框上的syslog-ng.conf destination php { tcp("10.10.10.10" port(5140)); }; log { source(src); filter(f_php); destination(php); }; 这会将所有php日志记录发送到一个框10.10.10.10,其中syslog-ng正在侦听端口5140. 在您的日志框中,您必须打开ec2安全组中的端口5140 这是一个关于如何设置syslog服务器的好教程 http://praxis.edoceo.com/howto/syslog-ng 编辑:这当然也可以将你的php盒子的其他重要日志源记录到日志服务器.考虑流量日志,系统日志等. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |