๊ด€๋ฆฌ ๋ฉ”๋‰ด

Coding Planet

Spring Boot Actuator - ํ™˜๊ฒฝ์„ค์ •ํ•˜๊ธฐ(IntelliJ), health, info ๋ณธ๋ฌธ

๐ŸŒฑSPRING

Spring Boot Actuator - ํ™˜๊ฒฝ์„ค์ •ํ•˜๊ธฐ(IntelliJ), health, info

jhj.sharon 2023. 8. 18. 18:37
๋ฐ˜์‘ํ˜•
Spring Boot Actuator๋Š” Spring Boot ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์šด์˜ ์ค‘์ธ ์ƒํƒœ์™€ ํ–‰๋™์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค. 

 

| Spring Boot Actuator ์˜ ์žฅ์ 

  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ์—”๋“œํฌ์ธํŠธ๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
  • ์ถ”๊ฐ€์ ์ธ ์„ค์ •์ด๋‚˜ ์กฐ์ •, ์ˆ˜์ •์—†์ด  DevOps ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
  • POM ํŒŒ์ผ์— ์˜์กด์„ฑ์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ถ”๊ฐ€ํ•จ์œผ๋กœ์จ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
  • REST ์—”๋“œํฌ์ธํŠธ๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ž๋™์œผ๋กœ ์ถ”๊ฐ€๋œ๋‹ค.

 

| Spring Boot Actuator ์„ค์ •ํ•˜๊ธฐ

  • POM ํŒŒ์ผ์— ์˜์กด์„ฑ์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ถ”๊ฐ€ํ•œ๋‹ค.
  • ๊ธฐ๋ณธ์ ์œผ๋กœ "/health"๋งŒ ์„ค์ •๋˜์–ด ์žˆ๋‹ค.
  • ์•„๋ž˜ application.properties์—์„œ๋Š” /health, /info๋ฅผ ์ถ”๊ฐ€ํ–ˆ๋‹ค.
  • ๋ชจ๋“  endpoints๋ฅผ ์ถ”๊ฐ€ํ•˜๋ ค๋ฉด ์™€์ผ๋“œ์นด๋“œ์ธ "*"๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋ชจ๋“  endpoints๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค์ •ํ•ด์•ผํ•œ๋‹ค. (application.properties) 
management.endpoints.web.exposure.include=*
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>

์‹คํ–‰์‹œ 2๊ฐœ์˜ endpoints๋ฅผ ์ œ๊ณตํ•œ๋‹ค๋Š” ์„ค๋ช…์„  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

 

 

| /health

  •  ์ด ์—”๋“œํฌ์ธํŠธ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ, ๋ฉ”์‹œ์ง€ ํ, ์™ธ๋ถ€ ์„œ๋น„์Šค ๋“ฑ๊ณผ ๊ฐ™์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์—ฌ๋Ÿฌ ๊ตฌ์„ฑ ์š”์†Œ์˜ ์ƒํƒœ๋ฅผ ํ™•์ธํ•œ๋‹ค. 
  • ์™ธ๋ถ€ ๋ชจ๋‹ˆํ„ฐ๋ง ๋„๊ตฌ๋‚˜ ์‹œ์Šคํ…œ์— ์˜ํ•ด ์ฃผ๋กœ ์‚ฌ์šฉ๋˜๋ฉฐ, ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ํ˜„์žฌ ์ •์ƒ์ ์œผ๋กœ ์ž‘๋™("UP") ์ค‘์ธ์ง€, ์•„๋‹ˆ๋ฉด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ ๋‹ค์šด("DOWN") ์ƒํƒœ์ธ์ง€๋ฅผ ํŒ๋‹จํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค. 
  • ์ด๋Š” ์„œ๋น„์Šค์˜ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์— ์˜ํ•ด ์ปค์Šคํ„ฐ๋งˆ์ด์ง•์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

 

| /info

  • ์—”๋“œํฌ์ธํŠธ๋ฅผ ํ†ตํ•ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ฉ”ํƒ€ ์ •๋ณด, ๋ฒ„์ „, ์„ค๋ช… ๋“ฑ์˜ ์‚ฌ์šฉ์ž ์ •์˜ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ํ•œ๋‹ค.
  • application.properties์—์„œ ์ œ๊ณตํ•˜๋Š” ๋ฉ”ํƒ€์ •๋ณด๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•ด๋‹น ํŒŒ์ผ์—์„œ info๋กœ ์‹œ์ž‘ํ•˜๋Š” properties๋Š” /info์— ๋…ธ์ถœ๋œ๋‹ค.

application.properties ์„ค์ • ์ „
application.properties ์„ค์ • ํ›„

 

ํฌ๋กฌ์—์„œ JSON ํ˜•์‹์œผ๋กœ ์ถœ๋ ฅํ•  ์ˆ˜๋„ ์žˆ์Œ!

 

๐Ÿ’ป ํฌ๋กฌ์—์„œ JSON์œผ๋กœ ์ถœ๋ ฅํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ• ์ฐธ๊ณ 

https://sharonprogress.tistory.com/manage/posts/

 

 

 

 

 

** ๊ทธ ์™ธ์˜ ์—ฌ๋Ÿฌ endpoints๋“ค..

๋ฐ˜์‘ํ˜•
Comments