カスタムサービスがあり、すべてのstdoutとstderrを構成ファイルのsyslogに送信するように明示的に呼び出しましたが、syslogとジャーナルの両方に一部の出力しか表示されません(これらは一貫しています)。
私は必死でサービスファイルで次のことを行いました。
StandardOutput=syslog+console
StandardError=syslog+console
サービスはpythonスクリプトであり、「print」ステートメント(Python 2.7)を使用してstdoutに書き込みます。これらのアイテムは、etherから失われたようですが、他のコマンド出力は両方とも正しくsyslogに書き込みますスクリプトをインタラクティブに実行すると、期待どおりにすべてがstdoutに表示されます。
私の知識に欠けているものは何ですか?
JdeBPのコメントは正しい解決策でした。
Systemd Pythonサービスがすべての出力をsyslogに送信しない
解決策は、-u
オプションを使用して、標準ストリームが出力をバッファリングせずに送信するようにします。