在docker container中调用php函数syslog无法工作

我试图dockerize我的PHP应用程序。 我有一个NGINX和PHP-FPM的容器。

我的应用程序通过PHP openlog和syslog函数将一些日志数据写入系统日志,如下所示:

openlog("myapp.test", LOG_ODELAY | LOG_CONS, LOG_LOCAL5); syslog(LOG_INFO, "This is a test"); closelog(); 

我的docker守护程序被configuration为使用syslog驱动程序:

 { "graph": "/storage/docker-service", "storage-driver": "overlay", "log-driver": "syslog", "log-opts": { "syslog-address": "tcp://SERVER_IP:514", "syslog-facility": "local5" } } 

(SERVER_IP是我的服务器的IPv4地址)

我使用docker-compose启动Docker容器,并仅为每个容器设置日志选项。

NGINX被configuration为login到系统日志:

 error_log syslog:server=SERVER_IP,facility=local5,tag=nginx debug; access_log syslog:server=SERVER_IP,facility=local5,tag=nginx; 

PHP-FPM相同:

 error_log = syslog syslog.ident = php-fpm syslog.facility = local5 

NGINX和PHP-FPM的日志在服务器系统日志中正确显示。 但是用php函数创build的日志消息不会出现。

这里有什么问题? 使用docker syslog driver来捕获容器中的所有系统日志消息?

任何build议如何解决这个问题?