以下は、プロセスの稼働時間を確認できることを知っています。
ps -o etime= -p "PID"
ここで、PID = pid番号です。
このプロセスが終わったら、ログを作成して稼働時間を含めたいと思います。終了する正確な時間は大丈夫ですが、必ずしも必要ではありません。自動的に再起動するスクリプトがありますが、安定性を向上させたいです。この場合、プロセスはffmpegです。不安定なソースで非常に低い帯域幅ストリームを実行していますが、プロセスは断続的に失敗します。
1日か2日ほど記録できる場合は、さまざまな構成を試してみて、稼働時間を許容可能な限度まで延長できるかどうかを確認します。
貴重な洞察に感謝します!
答え1
ps -eo pid,comm,lstart,etime,time,args
このコマンドは、複数の時間関連列を持つすべてのプロセスを一覧表示します。grep ffmpeg
興味のあるプロセスについて学ぶためのパイプラインです。
前のコマンドの出力には次の列があります。
PID COMMAND STARTED ELAPSED TIME COMMAND
~によるとPS
PID = Process ID
first COMMAND = only the command name without options and without arguments
STARTED = the absolute time the process was started
ELAPSED = elapsed time since the process was started (wall clock time), format [[dd-]hh:]mm:ss TIME = cumulative CPU time, "[dd-]hh:mm:ss" format
second COMMAND = again the command, this time with all its provided options and arguments