feat: 두 서비스간의 tracing을 위해 RestClientBuilder에 observationRegistry 설정 추가

This commit is contained in:
이상진 2025-10-01 12:43:16 +09:00
parent 7898a93182
commit 254bc980c1

View File

@ -1,5 +1,6 @@
package com.sangdol.roomescape.payment.infrastructure.client package com.sangdol.roomescape.payment.infrastructure.client
import io.micrometer.observation.ObservationRegistry
import org.springframework.boot.context.properties.EnableConfigurationProperties import org.springframework.boot.context.properties.EnableConfigurationProperties
import org.springframework.boot.http.client.ClientHttpRequestFactoryBuilder import org.springframework.boot.http.client.ClientHttpRequestFactoryBuilder
import org.springframework.boot.http.client.ClientHttpRequestFactorySettings import org.springframework.boot.http.client.ClientHttpRequestFactorySettings
@ -17,6 +18,7 @@ class PaymentConfig {
@Bean @Bean
fun tosspayClientBuilder( fun tosspayClientBuilder(
paymentProperties: PaymentProperties, paymentProperties: PaymentProperties,
observationRegistry: ObservationRegistry
): RestClient.Builder { ): RestClient.Builder {
val settings: ClientHttpRequestFactorySettings = ClientHttpRequestFactorySettings.defaults().also { val settings: ClientHttpRequestFactorySettings = ClientHttpRequestFactorySettings.defaults().also {
it.withReadTimeout(Duration.ofSeconds(paymentProperties.readTimeout.toLong())) it.withReadTimeout(Duration.ofSeconds(paymentProperties.readTimeout.toLong()))
@ -26,6 +28,7 @@ class PaymentConfig {
return RestClient.builder() return RestClient.builder()
.baseUrl(paymentProperties.apiBaseUrl) .baseUrl(paymentProperties.apiBaseUrl)
.observationRegistry(observationRegistry)
.defaultHeader("Authorization", getAuthorizations(paymentProperties.confirmSecretKey)) .defaultHeader("Authorization", getAuthorizations(paymentProperties.confirmSecretKey))
.requestFactory(requestFactory) .requestFactory(requestFactory)
} }