ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 08. 배치 상태 유형
    BackEnd/Spring Batch 2021. 12. 22. 21:30
    반응형

    BatchStatus

      JobExecution과 StepExecution의 속성으로 Job과 Step의 종료 후 최종 결과 상태가 무엇인지 정의합니다. COMPLETED, STARTING, STARTED, STOPPING, STOPPED, FAILED, ABANDONED(처리를 완료했지만 성공하지 못한 단계와 재시작 시 건너 뛰어야하는 단계), UNKNOWN 단계가 있습니다.

     

    SimpleJob

    •   마지막 Step의 BatchStatus 값을 Job의 최종 BatchStatus 값으로 반영
    •   Step이 실패할 경우 해당 Step이 마지막 Step이 된다.

     

    FlowJob

    •   Flow 내 Step의 ExitStatus 값을 FlowExecutionStatus 값으로 저장
    •   마지막 Flow의 FlowExecutionStatus 값을 Job의 최종 BatchStatus 값으로 반영

     

    ExitStatus

      JobExecution과 StepExecution의 속성으로 Job과 Step의 실행 후 어떤 상태로 종료되었는지 정의합니다. 기본적으로 ExitStatus는 BatchStatus와 동일한 값으로 설정됩니다. UNKNOWN, EXECUTING, COMPLETED, NOOP, FAILED, STOPPED 단계가 있습니다.

     

    SimpleJob

    •   마지막 Step의 ExitStatus 값을 Job의 최종 ExitStatus 값으로 반영

     

    FlowJob

    •   Flow 내 Step의 ExitStatus 값을 FlowExecutionStatus 값으로 저장
    •   마지막 Flow의 FlowExecutionStatus 값을 Job의 최종 ExitStatus 값으로 반영

     

    사용자 정의 ExitStatus

      ExitStatus에 존재하지 않는 exitCode를 새롭게 정의해서 설정할 수 있습니다. StepExecutionListener의 afterStep() 메서드에서 Custom exitCode 생성 후 새로운 ExitStatus를 반환하면 됩니다.

     

    FlowExecutionStatus

      FlowExecution의 속성으로 Flow의 실행 후 최종 결과 상태가 무엇인지 정의합니다. Flow 내 Step이 실행되고 나서 ExitStatus 값을 FlowExecutionStatus 값으로 저장합니다. FlowJob의 배치 결과 상태에 관여하며 COMPLETED, STOPPED, FAILED, UNKNOWN 단계가 있습니다.

     

    [참고자료]

    인프런-스프링 배치 - Spring Boot 기반으로 개발하는 Spring Batch

    반응형

    'BackEnd > Spring Batch' 카테고리의 다른 글

    10. Scope  (0) 2021.12.24
    09. Flow  (0) 2021.12.23
    07. Step  (0) 2021.12.21
    06. Job  (0) 2021.12.16
    05. 스프링 배치 초기화 설정  (0) 2021.12.16

    댓글

Designed by Tistory.