배치 스케쥴 등로 관련.
- 작성자 :
- 이*호
- 작성일 :
- 2023-03-26 18:04:32
- 조회수 :
- 645
- 구분 :
- 운영환경 / 배치운영환경 3.7
- 진행상태 :
- 완료
Q
배치운영환경 스케쥴 관리화면에 스케쥴 등록화면을 보면
실행주기가 매일, 매주, 매월, 매년, 1회실행으로 되어 있습니다.
현재 실행주기가 너무 1회성으로 되어 있어서, 사용자의 입력으로 다양하게 실행을 하도록 변경을 해보고 있습니다.
예를 들어 10분 간격으로 실행 / 1시간 간격으로 실행을 설정하고 싶은데 화면상에 날짜를 입력하는 화면으로 구성하기엔 답이 없어서
실제 텍스트 박스에 사용자가 크론탭 시간을 알아서 넣도록 하고 싶습니다. (예를 들어서 */10 * * * * 입력을 하도록 수정)
그런데 소스를 확인하다보니, 기존에 화면상에서 선택한 시간을 크롭탭 시간으로 변경을 해서 cronTrigger 로 설정을 하고 있는 것으로 확인이 되어서
사용자가 입력한 크론탭 시간을 변환 과정없이 바로 cronTrigger 에 입력이 되도록 수정을 해봤습니다.
여기서 질문이 좀 있습니다.
1. */10 * * * * 로 등록을 해봤더니 10초 간격으로 돌아가는거같습니다.
크론탭 트리거에 등록된 설정 시간을 볼 수는 없을까요?
2. 작동 원리가 크론탭 트리거에 등록된 시간(*/10 * * * * ) 만으로 스케쥴이 작동되는건지, 아니면 TN_SCHDUL 테이블에 등록된 설정 값이 스케쥴과 관련이 있는건가요?
(화면상에서 임시로 텍스트 박스로 입력을 받아서 크롭탭 트리거에 저장할때만 입력값을 넣었기 때문에 TN_SCHDUL 테이블에 값은 좀 다른 구조로 들어가고 있습니다.)
자세한 답변 부탁드립니다.
배치운영환경 스케쥴 관리화면에 스케쥴 등록화면을 보면
실행주기가 매일, 매주, 매월, 매년, 1회실행으로 되어 있습니다.
현재 실행주기가 너무 1회성으로 되어 있어서, 사용자의 입력으로 다양하게 실행을 하도록 변경을 해보고 있습니다.
예를 들어 10분 간격으로 실행 / 1시간 간격으로 실행을 설정하고 싶은데 화면상에 날짜를 입력하는 화면으로 구성하기엔 답이 없어서
실제 텍스트 박스에 사용자가 크론탭 시간을 알아서 넣도록 하고 싶습니다. (예를 들어서 */10 * * * * 입력을 하도록 수정)
그런데 소스를 확인하다보니, 기존에 화면상에서 선택한 시간을 크롭탭 시간으로 변경을 해서 cronTrigger 로 설정을 하고 있는 것으로 확인이 되어서
사용자가 입력한 크론탭 시간을 변환 과정없이 바로 cronTrigger 에 입력이 되도록 수정을 해봤습니다.
여기서 질문이 좀 있습니다.
1. */10 * * * * 로 등록을 해봤더니 10초 간격으로 돌아가는거같습니다.
크론탭 트리거에 등록된 설정 시간을 볼 수는 없을까요?
2. 작동 원리가 크론탭 트리거에 등록된 시간(*/10 * * * * ) 만으로 스케쥴이 작동되는건지, 아니면 TN_SCHDUL 테이블에 등록된 설정 값이 스케쥴과 관련이 있는건가요?
(화면상에서 임시로 텍스트 박스로 입력을 받아서 크롭탭 트리거에 저장할때만 입력값을 넣었기 때문에 TN_SCHDUL 테이블에 값은 좀 다른 구조로 들어가고 있습니다.)
자세한 답변 부탁드립니다.
환경정보
-
- OS 정보 : 윈도우
- 표준프레임워크 버전 : 운영환경 4.0
- JDK(JRE) 정보 :
- WAS 정보 :
- DB 정보 :
- 기타 환경 정보 :
A
안녕하세요.
표준프레임워크센터입니다.
1. 배치운영환경 메뉴 중 [배치정보 - 스케쥴관리] 메뉴에서
등록된 배치업무에 대한 스케쥴을 설정할 수 있습니다.
스케쥴이 등록되면 [배치정보 - 배치정보관리] 메뉴에서
배치업무 상세보기로 들어가서 해당 업무의 스케쥴을 확인할 수 있습니다.
2. [배치정보 - 스케쥴관리] 메뉴에서 배치 스케쥴을 등록하는 로직을 따라가다 보면
EgovSchdulUtl 클래스의 insertSchdul 메소드에서 Quartz를 이용하여
스케쥴러에서 실행할 Job의 제반사항을 가지는 JobDetil을 생성하고
스케쥴러의 실행주기를 CronTrigger를 사용하여 생성하고 있으니
이를 참고하여 커스텀에 활용하시기 바랍니다.
마지막으로, TN_SCHDUL에는 [배치정보 - 스케쥴관리] 에서 받은 값을 그대로 저장하는데
질문에서처럼 다른 구조로 들어간다는 부분에 대해서는 확인할 수 없으므로
정확한 답변을 드리기 어려우니 앞서 설명한
EgovSchdulUtl 클래스를 활용하시기 바랍니다.
감사합니다.
표준프레임워크센터입니다.
1. 배치운영환경 메뉴 중 [배치정보 - 스케쥴관리] 메뉴에서
등록된 배치업무에 대한 스케쥴을 설정할 수 있습니다.
스케쥴이 등록되면 [배치정보 - 배치정보관리] 메뉴에서
배치업무 상세보기로 들어가서 해당 업무의 스케쥴을 확인할 수 있습니다.
2. [배치정보 - 스케쥴관리] 메뉴에서 배치 스케쥴을 등록하는 로직을 따라가다 보면
EgovSchdulUtl 클래스의 insertSchdul 메소드에서 Quartz를 이용하여
스케쥴러에서 실행할 Job의 제반사항을 가지는 JobDetil을 생성하고
스케쥴러의 실행주기를 CronTrigger를 사용하여 생성하고 있으니
이를 참고하여 커스텀에 활용하시기 바랍니다.
마지막으로, TN_SCHDUL에는 [배치정보 - 스케쥴관리] 에서 받은 값을 그대로 저장하는데
질문에서처럼 다른 구조로 들어간다는 부분에 대해서는 확인할 수 없으므로
정확한 답변을 드리기 어려우니 앞서 설명한
EgovSchdulUtl 클래스를 활용하시기 바랍니다.
감사합니다.