spring boot/actuator in spring boot

spring boot 3.x + actuator 파헤치기. 1. 프로젝트 생성

Hello World Study 2023. 3. 19. 23:04

spring boot 3.x 기반으로 actuator 설정 및 custom metrics 추가하는 방법에 대해 알아보도록 하겠습니다. 

 

단순히 actuator 사용법만 익히는 것이 아닌, spring boot 내부적으로 어떤 방법으로 actuator의 다양한 기능들이 지원되는지 소스코드도 함께 살펴봐서 깊이있는 이해와 spring boot 의 동작 원리도 함께 학습되도록 하겠습니다.

 

spring boot actuator 동영상 강의는 youtube 및 inflearn 에 등록되어 있으니 편한 플랫폼을 이용해서 영상 시청이 가능합니다.

 

https://www.inflearn.com/course/spring-boot-actuator-%ED%8C%8C%ED%97%A4%EC%B9%98%EA%B8%B0

 

[무료] spring boot actuator 파헤치기 - 인프런 | 강의

spring boot actuator 기본 설정/사용법 및 나만의 custom endpoint와 metrics를 만들 수 있는 방법을 배우게 됩니다. 사용법만 익히는 게 아닌 내부 코드 및 spring boot 기본 지식도 함께 다루어 조금 더 깊이

www.inflearn.com

 

동영상링크:

https://youtu.be/2-JXZOJkkrM

 

project 생성

 

우선 아래와 같이 https://start.spring.io/ 에서 프로젝트를 하나 생성합니다.

 

현 시점 최신 버전인 3.0.4 를 선택했으며, spring boot 3.0 부터는 java 17이 최소버전입니다.

의존성에는 spring boot actuator 가 필수이며, 그외 의존성은 actuator 가 web과 DB 의 여러 정보들을 수집하는걸 보여주기 위해 넣은것일뿐입니다.

gradle 할줄 아는 사람은 maven 도 어느정도 알것으로 예상되기에 maven 으로 실습하며, 의존성 라이브러리 넣는 방법이 차이나지만 단순 문법적인 부분이라 어렵지 않을것으로 보입니다. 다만 maven, gradle 에 따라 다르게 설정해야 하는 플러그인 부분은 maven, gradle 구분해서 언급하도록 하겠습니다.

 

자 그럼 시작하시죠

 

 

위 웹페이지에서 만든 zip 파일을 압축 해제하고 intellij 에서 프로젝트를 열어줍니다. (저는 intellij community 버전을 사용합니다. )

 

아래처럼 main이 있는 클래스를 찾은 후 실행을 시켜줘서 정상적으로 실행되는지 확인해줍니다. 여기서 에러가 난다면 에러메시지를 확인해서 잘 해결해주세요 :)

 

spring boot 구동시킨 상태에서 크롬 브라우저로 http://127.0.0.1:8080/actuator  를 입력해봅시다. 아래처럼 json 정보가 나옵니다. 저는 json 관련 크롬 확장프로그램을 설치했기에 아래처럼 예쁘게? 나옵니다.

 

 

만약 별로 확장프로그램이 설치되지 않았다면 아래처럼 한줄에 쭉 적혀진 json이 보일겁니다.

json 내용을 보면 아래처럼 각 항목별 상세링크 정보를 알려주고 있습니다.

self -> http://127.0.0.1:8080/actuator

health -> http://127.0.0.1:8080/actuator/health

health-path -> http://127.0.0.1:8080/actuator/health/{*path}

이런식으로 항목별 상세링크를 알려주는 방식을 HATEOAS . 발음은 / 헤이티오스/ 라고 부릅니다. 아래처럼 구글에서 검색하면 많은 정보가 나오니 더 자세한 정보는 구글링을 해주세요.

 

 

프로젝트 생성 및 기본 동작 확인은 이제 완료되었습니다. 다음 포스팅부터 좀 더 자세히 알아보도록 하겠습니다.