如何设置PHP日志以转到远程服务器?

前端之家收集整理的这篇文章主要介绍了如何设置PHP日志以转到远程服务器?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们将进行部署设置,我们将拥有许多服务器,其中大部分服务器在流量上升时自动添加负载均衡器.这种设置的问题在于,如果一个开发人员需要拖尾日志来解决问题,他将不得不在每台服务器上打开一个控制台,由于开发人员通常不知道我们可能会使用多少服务器,因此这很复杂当时有功能.

如果开发人员可以在一台服务器中找到所有日志 – 比如我们的部署服务器,那么故障排除变得更加容易.

为此,我考虑使用cron设置从每台FE计算机到部署服务器的推送,该计划将复制我们的部署服务器上的日志.这种方法存在两个问题:

>有1分钟的延迟,因为crons不能更频繁地运行.
>每台FE计算机上的cron必须设置为同步到部署服务器上的特定位置,但事先我不知道有多少这样的FE服务器存在.

为了解决这个问题,我正在研究一种连接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盒子的其他重要日志源记录到日志服务器.考虑流量日志,系统日志等.

猜你在找的PHP相关文章