저는 장치 오류를 모니터링하고 글로벌 이메일을 통해 경고를 보내는 스크립트를 작성하려고 했습니다(즉, OnFailure=
모니터링하려는 모든 장치가 아닌 경우).
문서에서 나는 JobRemoved
단지 업무용으로 내가 찾고 있는 것과 똑같은 소리를 내는 D-Bus 신호를 발견했습니다. 특히 이는 Type=simple
하위 프로세스가 생성되자마자 종료될 때까지 JobRemoved
기다리지 않고 해당 유닛이 실행된다는 것을 의미합니다.
장치 상태 변경을 전역적으로 모니터링하는 유사한 신호가 있습니까?
(이것은 나의 현재 시도입니다:협회)
답변1
당신은에 연결할 수 있습니다속성이 변경되었습니다.각 셀의 속성이 변경될 때마다 신호가 방출됩니다. 재산활성 상태
장치가 현재 활성 상태인지 여부를 반영하는 상태 값을 포함합니다. 현재 정의된 상태는 활성, 다시 로드, 비활성, 실패, 활성화, 비활성화입니다. active는 장치가 활성 상태임을 의미합니다(분명히...). 다시 로드는 장치가 활성 상태이고 현재 구성을 다시 로드하고 있음을 나타냅니다. 비활성은 비활성 상태이고 이전 실행이 성공했거나 이전 실행이 아직 발생하지 않았음을 의미합니다. failed는 해당 작업이 비활성 상태이고 이전 실행이 실패했음을 의미합니다(이에 대한 자세한 내용은 결과 속성의 서비스와 같은 장치 유형별 인터페이스에서 찾을 수 있습니다. 아래 참조). 활성이란 해당 장치가 이전에 비활성 상태였지만 현재 활성화되고 있음을 의미합니다. 이와 대조적으로 비활성화됨은 장치가 현재 비활성화되는 과정에 있음을 나타냅니다.
(에서systemddbus 문서).
초기 장치 목록을 얻으려면 이 ListUnits
방법을 사용하고 장치가 추가/제거될 때 알림을 받도록 신호를 UnitNew
구독 할 수 있습니다.UnitRemoved
다음을 포함하여 이미 이를 사용하고 있는 여러 기존 프로젝트가 있습니다.시스템 모니터링 프로그램그리고사그베셰이드.