서비스를 시작하기 전에 로그의 메시지를 어떻게 기다릴 수 있나요?

서비스를 시작하기 전에 로그의 메시지를 어떻게 기다릴 수 있나요?

두 번째 서비스가 시작하기 전에 첫 번째 서비스를 사용하여 완전히 시작되는 두 개의 Java 서비스가 있습니다.

첫 번째 서비스가 완전히 시작되었는지 확인하려면 특정 메시지에 대한 로그를 grep해야 합니다(이전 시작 메시지도 무시함).

systemd 파일 어딘가에 이 검색을 추가할 수 있나요?

답변1

grep/sleep을 수행하기 위해 유닛 파일에 "부팅 전" 작업을 추가할 수 있습니다. 예쁘진 않은데 뭔가 좀 그렇네요!

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

관련 정보