Attualmente sto cercando di creare un'unità systemd come server Web. Attualmente, il mio foo.service
file ha il seguente aspetto:
[Unit]
Description=The Foo Web Server
[Service]
Type=simple
ExecStart=/opt/foo/.cabal-sandbox/bin/foo
[Install]
WantedBy=multi-user.target
L' foo
eseguibile registra automaticamente tutte le richieste HTTP su stdout - questo è ben testato. Tuttavia, quando visualizzo i registri con journalctl -u foo
, ottengo solo un output in questo modo:
...
May 06 17:46:57 localhost systemd[1]: Stopping The Foo Web Server...
May 06 17:46:57 localhost systemd[1]: Started Foo Web Server.
May 06 17:46:57 localhost systemd[1]: Starting The Foo Web Server...
May 06 17:47:08 localhost systemd[1]: Stopping The Foo Web Server...
May 06 17:47:08 localhost systemd[1]: Started The Foo Web Server.
May 06 17:47:08 localhost systemd[1]: Starting The Foo Web Server...
Qualcuno potrebbe spiegare perché non sta registrando tutto l'output stdout? Ho dato una breve occhiata a questa domanda precedente , ma non aiuta - tuttavia alludeva a qualcosa del tipo "... potrebbe non funzionare per i sistemi che non usano full systemd" - sarebbe questo il caso di Ubuntu 15.04 ? Grazie in anticipo, qualsiasi aiuto con questo sarebbe molto apprezzato!
print('Hello World!', flush=True)
e questo ha funzionato! L'output ha iniziato a essere visualizzato in journalctl.