Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Reactive
- ProjectLoom
- Brooklin
- Vmagent
- spring
- VictoriaMetrics
- springboot
- Mirror
- Reassign
- ExecutableJar
- swagger
- consumer
- NoClassDefFoundError
- Vmalert
- kafka
- webflux
- Rebalance
- tsdb
- broker
- OFFSET
- restdocs
- java
- Zookeeper
- JVM
- raft
- API문서
- OpenJDK
- 비동기
- JDK
Archives
- Today
- Total
거북이 developer
Spring Webflux - Monitoring Metrics 본문
Monitoring Metrics
- Spring Boot Application 의 Metric 을 수집하는 방법중의 하나로 Spring Actuator 를 사용할 수 있다.
- Spring Actuator 의 dependency 를 추가한다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
- management.endpoints.web.exposure.include 에 metrics 값을 추가하면 /actuator/metrics API 가 활성화 된다.
management:
endpoints:
web:
exposure:
include: ["metrics"]
- HTTP GET method 요청으로 /actuator/metrics/{metric name} 형태로 요청하면 수집된 metric 에 대한 조회가 가능하다.
- tag 별로 조회하고자 하면 HTTP GET method 요청으로 /actuator/metrics/{metric name}?tag=key:value 형태로 요청하면 된다.
TcpServer
- Netty TcpServer 에 대한 metric
- NettyServerCustomizer 를 통해 tcpServer.metrics(boolean); 함수를 호출하여 TcpServer 에 대한 metric 을 활성화해야 한다.
nametype설명
reactor.netty.tcp.server.data.received | DistributionSummary | TcpServer 에서 수신받은 data byte 수 |
reactor.netty.tcp.server.data.sent | DistributionSummary | TcpServer 에서 전송한 data byte 수 |
reactor.netty.tcp.server.errors | Counter | TcpServer Error 발생 횟수 |
reactor.netty.tcp.server.tls.handshake.time | Timer | TLS handshake 에 소요된 시간 |
HttpClient
- Reactor Netty HttpClient 에 대한 metric
- Reactor Netty HttpClient 생성시 HttpClient.metrics(boolean, Consumer) 함수를 호출하여 HttpClient 에 대한 metric 을 활성화해야 한다.
nametype설명
reactor.netty.http.client.data.received | DistributionSummary | TcpServer 에서 수신받은 data byte 수 |
reactor.netty.http.client.data.sent | DistributionSummary | TcpServer 에서 전송한 data byte 수 |
reactor.netty.http.client.errors | Counter | TcpServer Error 발생 횟수 |
reactor.netty.http.client.tls.handshake.time | Timer | TLS handshake 에 소요된 시간 |
reactor.netty.http.client.connect.time | Timer | TcpServer 에서 수신받은 data byte 수 |
reactor.netty.http.client.address.resolver | Timer | TcpServer 에서 전송한 data byte 수 |
reactor.netty.http.client.data.received.time | Timer | TcpServer Error 발생 횟수 |
reactor.netty.http.client.data.sent.time | Timer | TLS handshake 에 소요된 시간 |
reactor.netty.http.client.response.time | Timer | TLS handshake 에 소요된 시간 |
ConnectionProvider
- Reactor Netty HttpClient 에서 Connection 관리를 담당하는 ConnectionProvider 에 대한 metric
- Reactor Netty ConnectionProvider 를 Builder 를 통해 생성시 ConnectionProvider.Builder.metrics(boolean) 함수를 호출하여 ConnectionProvider 에 대한 metric 을 활성화해야 한다.
nametype설명
reactor.netty.connection.provider.total.connections | Gauge | TcpServer 에서 수신받은 data byte 수 |
reactor.netty.connection.provider.active.connections | Gauge | TcpServer 에서 전송한 data byte 수 |
reactor.netty.connection.provid er.idle.connections | Gauge | TcpServer Error 발생 횟수 |
reactor.netty.connection.provider.pending.connections | Gauge | TLS handshake 에 소요된 시간 |
'Spring Framework' 카테고리의 다른 글
Spring Webflux - Utils (0) | 2022.03.14 |
---|---|
Spring Webflux - Test Code (0) | 2022.03.14 |
Spring Webflux - Exception Handle (0) | 2022.03.14 |
Spring Webflux - Server Configuration (0) | 2022.03.14 |
Spring Webflux - WebClient (0) | 2022.03.14 |
Comments