为什么在使用 PHP buildpack 推送我的应用程序时会看到 'NOTICE' 消息?

Why do I see 'NOTICE' messages when I push my application using the PHP buildpack?

每次部署 PHP 应用程序时,我都会在日志中看到很多这样的 'NOTICE' 消息。

例如,当我 运行 'cf logs APPNAME' 我看到:

2015-04-10T15:00:59.70+0100 [App/0] ERR [10-Apr-2015 14:00:59] NOTICE: [pool www] 'user' directive is ignored when FPM is not running as root

2015-04-10T15:01:00.63+0100 [App/0] ERR [10-Apr-2015 14:00:59] NOTICE: [pool www] 'user' directive is ignored when FPM is not running as root

2015-04-10T15:01:00.63+0100 [App/0] ERR [10-Apr-2015 14:00:59] NOTICE: fpm is running, pid 93

2015-04-10T15:01:00.63+0100 [App/0] ERR [10-Apr-2015 14:00:59] NOTICE: ready to handle connections

谢谢!

您可以在您的脚本中设置 error_reporting(E_ALL & ~E_NOTICE);,否则在您的 php.ini

中修改它

可以安全地忽略这些消息。 buildpack 将这些通知消息发送到 stderr。我会看看这是否可以改进。

您在日志中看到的内容由 PHP 构建包中的 error_log 参数值控制,该参数定义了应用程序的日志记录级别。

默认情况下,error_log参数的值是stderr通知

以下是 Cloud Foundry 提供的 PHP buildpack 的 nginx-defaults.conf 文件中的默认日志记录级别配置示例。

daemon off;
error_log stderr notice;
pid @{HOME}/nginx/logs/nginx.pid; 

NOTICE 消息是信息性的,通常不表示问题。 要停止记录这些消息,请将记录级别从
更改为 标准错误通知

标准错误
在 buildpack 的 nginx-defaults.conf 文件中。

例如:

daemon off;
error_log stderr error; 
pid @{HOME}/nginx/logs/nginx.pid;

有关 buildpack 的更多信息,请参阅 cloudfoundry/php-buildpack

有关如何更改默认日志记录配置的详细信息,请参阅 error_log