2016-06-02 7 views
2

Ich betreibe celeryd in prefork-Modus mit cuncurrency> 1 wie folgt:Ist die Protokollierung von mehreren Sellerie Arbeiter in eine Datei sicher?

celery worker -c 100 -A x.y.z.tasks -f mylogfile.log --loglevel=INFO -n myworker 

Als Pythons die Protokollierung von mehreren Prozessen in einer Datei ist nicht sicher (link), ist Sellerie tun etwas über diese? So wie Logging in den Hauptprozess zu schicken und die Datei nur einmal zu öffnen?

Was passiert, wenn ich alle Protokolle auf stderr (keine -f) und Pipe stderr in eine Datei mit Supervisor umleiten?

+0

ein Ganter Nehmen auf [Sellerie/app/log.py] (https://github.com/celery/celery/blob/aee706ad5a743e3a51ed40f827bc02e61947902d/ sellerie/app/log.py) und [sellery/utils/log.py] (https://github.com/sellery/sellery/blob/d676150e7b45618618d2e5cf2ac4e9bfb108231b/sellery/utils/log.py) und prüfen, ob ein SocketHandler verwendet wird und separater Prozess für die Bearbeitung des Jobs. – Kasramvd

Antwort

1

nur Master-Prozess ist der Umgang mit dieser Protokolldatei, so dass Sie sicher sind