2017-03-01 2 views
1

데이터베이스에 대한 액세스만으로 석영 작업 상태를 모니터링해야합니다. 석영은 이것을 달성 할 수있는 방법을 제공합니까?석영 상태 작업보고

설명서를 읽는 Trigger 클래스에는 다양한 상태, 즉 ERROR 및 COMPLETE를 정의하는 TriggerState가 있습니다.

그러나 정기적으로 실행되는 동안 CompleteExecutionInstruction은 항상 NOOP입니다. 예외를 던지거나 완전히 실행해도 상관 없습니다. 내가 성공하면 COMPLETE, 예외를 던지면 ERROR를 기대했다.

아무도이 경험이 있습니까?

답변

1

트리거 상태는 작업의 마지막 실행 상태를 반영하지 않으므로 트리거 상태가 COMPLETE 또는 ERROR가 될 것으로 예상 할 수 없습니다.

작업을 모니터하려면 Quartz JobListener 인터페이스를 살펴 보는 것이 좋습니다. 이 인터페이스를 사용하면 관심있는 모든 작업 실행 이벤트를 인터셉트하고 처리 할 수 ​​있습니다. 예를 들어, 인터셉트 된 작업 실행 이벤트를 데이터베이스에 저장하는 작업 수신기를 구현 한 다음이 데이터베이스를 쿼리하여 작업의 마지막 작업 실행 상태 등

기존의 Quartz 스케쥴러, 작업 및 트리거 관리 및 모니터링 도구 사용을 고려할 수도 있습니다. 나는이 공구의 한개 인 QuartzDesk의 원래 저자이다. QuartzDesk는 어떤 방식 으로든 애플리케이션 코드를 수정할 필요가없는 완전히 방해가되지 않는 툴이며, 모든 유형의 Java 애플리케이션 및 거의 모든 Quartz 버전에서 작동 할 수 있습니다. 이 도구가 귀하의 요구 사항을 충족시키는 경우 등록하고 시도 할 수있는 public online demo이 있습니다. 모니터링과 관련하여 QuartzDesk GUI는 각 작업 및 트리거 옆에 이른바 상태 표시기를 표시합니다. 이 표시기는 지난 10 건의 작업/트리거 실행 상태 (성공, 오류, 거부)를 나타내므로 최근에 실패한 작업이 있는지 빠르게 확인할 수 있습니다. 또한 개별 작업 및 트리거의 전체 실행 기록에 액세스 할 수 있습니다. 작업 실행 관련 이벤트에 대한 알림을 받으려면 구성된 조건이 충족되면 알림 메시지 (IM, SMS, 전자 메일, 슬랙, HipChat, SNMP 트랩 등)를 보낼 실행 알림 규칙을 만들 수 있습니다 만났다. 작업 상태 표시기와 선택한 작업의 실행 기록을 보여주는 GUI의 스크린 샷을 첨부하고 있습니다.

QuartzDesk GUI.