У меня тут ситуация. У меня есть задача сельдерея, которая использует регистратор python для входа в файл журнала. Однако, когда я запускаю рабочих сельдерея, я вижу сообщения журнала на экране. Это записывается в файлы журнала, но у меня также есть множество сообщений на моем экране.
Проблема возникает, когда я помещаю сельдерей в supervisord. Я установил путь std_out и путь std_err, но все сообщения рабочего журнала записываются в файл журнала std_err вместо файла журнала std_out. Таким образом, я не могу получить настоящие сообщения об ошибках в std_err, плюс сообщения журнала являются избыточными, поскольку они все равно записываются в файл журнала приложения.
Я попытался установить уровень журнала при запуске рабочих сельдерея, но, похоже, ничто не мешает рабочим сбрасывать сообщения журнала на экран, который при запуске в supervisord записывается в std_err.
Вот мой файл конфигурации супервизора
[program:celery_worker]
command=celery -A CeleryWorker worker --concurrency=4 -l error
directory=/home/swaroop/codebase/src
stdout_logfile=/home/swaroop/codebase/logs/clLogger.log
stderr_logfile=/home/swaroop/codebase/logs/clerrorLogger.log
autostart=true
autorestart=true
У кого-нибудь есть решение этой проблемы? Любая техника для отделения реальных сообщений об ошибках сельдерея от сообщений журнала приложения была бы полезной.