のためのサービスを作成します。私はこのようなループを含むPythonスクリプトを持っているPythonスクリプト
while True:
if p.poll(waitTime):
if j.process() == journal.APPEND:
for entry in j:
process_data(entry))
は現在、私のサービスは、次のようになります。
[Unit]
Description=Journald shipper
Requires=systemd-journald.service
After=systemd-journald.service
[Service]
Type=forking
ExecStart=/usr/bin/myScript.py
[Install]
WantedBy=multi-user.target
私が現在持っている問題があります«start»コマンドはタイムアウトを返します。スクリプトが終了しませんが、サービスが開始されることはありませんので、:(
ので それは論理的だ、私は私が間違ったことをやっていると仮定します。私はそれが最後だか私が持っていないのを待たずにスクリプトを実行できるように.service
ファイルを変更することがありますか?
を私の«無限»ループを変更し、どのように私はこの?
'p.poll(waitTime):'が間違っている場合。スクリプトが終了したかどうかを確認する予定ですが、スクリプトが失敗してゼロの戻りコードが失敗した場合は失敗します。代わりに 'p.poll(waitTime)がNone:でない場合'を実行してください。 –