サービスを開始する前にログ内のメッセージをどのように待つことができますか?

サービスを開始する前にログ内のメッセージをどのように待つことができますか?

2番目のサービスが開始する前に、最初のサービスを使用して完全に開始される2つのJavaサービスがあります。

最初のサービスが完全に開始されたことを確認するには、特定のメッセージのログをgrepする必要があります(前の開始メッセージも無視します)。

systemdファイルのどこかにこの検索を追加できますか?

答え1

grep / sleepを実行するために、ユニットファイルに「起動前」タスクを追加できます。きれいではありませんが、何か少しそうですね!

ExecStartPre=/bin/bash -c "i=1; while [ $i -ne 0 ]; do grep pattern file; i=$?; sleep 5; done"

関連情報