dependency를 추가해 주는 것으로 충분하다. 하지만 endpoint의 prefix가 actuator 경로 하위로 한정된다(actuator 경로를 변경하는 방법은 있지만, 하위 경로에 속해야 한다는 제약을 벗어나는 다른 방법을 발견하지 못했음).
implementation 'org.springframework.boot:spring-boot-starter-actuator'
...
// "/actuator/prometheus" 에 p8s 메트릭을 노출해준다.
implementation 'io.micrometer:micrometer-registry-prometheus'
actuator의 하위 경로가 아닌 endpoint로 메트릭을 노출하려면 다음과 같이 컨트롤러를 구현한다.
"/metrics"로 노출하는 예제이다.
import io.micrometer.prometheus.PrometheusMeterRegistry;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequiredArgsConstructor
public class MetricsController {
private final PrometheusMeterRegistry prometheusMeterRegistry;
@GetMapping("/metrics")
public String metrics() {
return prometheusMeterRegistry.scrape();
}
}
'잡다구리' 카테고리의 다른 글
resilience4j: CircuitBreaker configuration 간단 정리 (0) | 2022.08.18 |
---|---|
jpa: 컬럼의 네이밍 컨벤션 전략 - physical-strategy (0) | 2022.08.16 |
Spring: @DataJpaTest (0) | 2022.08.14 |
Validation with Spring Boot - the Complete Guide (0) | 2022.08.14 |
Spring: @ConfigurationProperties (0) | 2022.08.14 |
기초부터 다지는 ElasticSearch 운영 노하우 : 스터디 기록 (0) | 2022.08.13 |
Hexagonal Architecture with Java and Spring (0) | 2022.08.13 |
Building a Multi-Module Spring Boot Application with Gradle (0) | 2022.08.13 |
댓글