스프링 부트 PID(Process Identifier) 파일 생성 방법
왜?
스프링 부트 애플리케이션을 백그라운드 프로세스로 실행했다면 프로세스를 종료할 때 PID(Process Identifier)
를 알아야 한다. 쉽게는 ps -ef|grep java
와 같은 명령어로 직접 PID를 확인하여 kill
명령어로 프로세스를 종료할 수 있지만 스프링 부트 애플리케이션의 재시작 자동화를 위해서는 다른 방법이 필요했다.
그래서 PID가 적혀있는 파일이 필요하고 스프링 부트에서는 PID 파일을 생성하도록 간단하게 설정할 수 있다.
어떻게?
application.yml
에 아래와 같이 PID 파일 생성 경로를 지정한다.
1 | spring: |
@SpringBootApplication
어노테이션을 적용한 클래스의 main()
메서드에서 SpringApplication
객체를 생성 후 addListeners()
메서드를 통해 다음과 같이 ApplicationPidFileWriter
를 설정해준다.
1 | public static void main(String[] args) { |
지정한 경로에 PID 파일이 생성되는지 확인하면 끝!