stdout
をリダイレクトできます と stderr
script
を使用したシェル全体の プラグマ (exec
の代わりに ) exec >FILE 2>&1
と組み合わせて 、そのように:
script
exec >/path/to/some_log_file 2>&1
exec your_command_here
end script
これにより、何が起こっているのかについてより良い洞察が得られるはずです。これは、私の新興スクリプトであらゆる種類の問題をキャッチするのに役立つことがわかりました。 できる コマンドの stdout
をパイプします /stderr
ただし、シェルに起因するエラー (構文エラーなど) を見逃すことになります。
一方、service
の場合 ぶら下がっている、かもしれない スクリプトをヒットすることすらありません。その場合、もちろん、これは役に立ちません。
console log
もあります ここで定義されている宣言型:http://upstart.ubuntu.com/cookbook/#console-log
upstart がデフォルトで有効になっているかどうかはわかりませんが、upstart ジョブごとに有効にすることができます。デフォルトでは /var/log/upstart/<job>.log
に出力されます