Зараз я намагаюся зробити системний блок як веб-сервер. Наразі мій foo.service
файл виглядає так:
[Unit]
Description=The Foo Web Server
[Service]
Type=simple
ExecStart=/opt/foo/.cabal-sandbox/bin/foo
[Install]
WantedBy=multi-user.target
Виконавчий foo
файл автоматично записує всі HTTP-запити до stdout - це добре перевірено. Однак, коли я переглядаю журнали journalctl -u foo
, я отримую лише такий результат:
...
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...
Чи може хтось пояснити, чому він не записує весь вихід stdout? Я коротко переглянув це попереднє запитання , але це не допомагає - однак він натякав на щось, що відповідає "... може не працювати для систем, які не використовують повний systemd", - це стосується Ubuntu 15.04 ? Заздалегідь дякую, будь-яка допомога з цим буде дуже вдячна!
print('Hello World!', flush=True)
і це зробило трюк! Вихід почав показуватися в journalctl.