Вызов функции php syslog в контейнере Docker не работает

Я пытаюсь докернизировать мое приложение 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 настроен на использование драйвера системного журнала:

{
"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-контейнер с помощью docker-compose и устанавливаю только log-tag с параметрами журнала для каждого контейнера.

NGINX настроен для входа в системный журнал:

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, никогда не появляются.

В чем здесь проблема? Подумайте, с помощью драйвера системного журнала docker перехватывает все сообщения системного журнала в контейнерах?

Любое предложение, как это исправить?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]