У меня в Docker работает приложение PHP / Symfony, которое использует Monolog для входа в stdout / stderr.Все это прекрасно работает, за исключением случаев, когда команды консоли Symfony внутри контейнера.
monolog:
handlers:
stdout:
type: filter
handler: stdout_unfiltered
max_level: notice
channels: ['!event']
stdout_unfiltered:
type: stream
level: debug
path: 'php://stdout'
stderr:
type: stream
level: warning
channels: ['!event']
path: 'php://stderr'
console:
type: console
channels: ['!console', '!doctrine', '!event']
process_psr_3_messages: false
Проблема заключается в том, что всякий раз, когда команда выполняется, обработчики "stdout", "stderr" и "console" регистрируются втекущий процесс терминала.Это приводит к тому, что вывод консоли портится, и docker logs
не содержит записей журнала: http://i.imgur.com/yB1IKrR.png.
Был бы простой способ всегда отправлять вывод журнала в php-fpm (или любойрабочий) процесс?