Obecnie próbuję utworzyć jednostkę systemową jako serwer WWW. Obecnie mój foo.service
plik wygląda następująco:
[Unit]
Description=The Foo Web Server
[Service]
Type=simple
ExecStart=/opt/foo/.cabal-sandbox/bin/foo
[Install]
WantedBy=multi-user.target
Plik foo
wykonywalny automatycznie rejestruje wszystkie żądania HTTP na standardowe wyjście - jest to dobrze przetestowane. Jednak gdy przeglądam dzienniki za pomocą journalctl -u foo
, otrzymuję tylko takie dane wyjściowe:
...
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...
Czy ktoś mógłby wyjaśnić, dlaczego nie rejestruje wszystkich danych wyjściowych standardowego wyjścia? Spojrzałem krótko na to poprzednie pytanie , ale to nie pomaga - jednak odnosiło się do czegoś w stylu „... może nie działać w systemach, które nie używają pełnego systemu” - czy tak byłoby w przypadku Ubuntu 15.04 ? Z góry dziękuję za wszelką pomoc.
print('Hello World!', flush=True)
i to załatwiło sprawę! Dane wyjściowe zaczęły się pojawiać w dzienniku.