From 7ce6fce8f57faf5681a79422f2da119a9b6bffc1 Mon Sep 17 00:00:00 2001 From: pricelees Date: Sat, 4 Oct 2025 17:47:07 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=ED=8A=B8=EB=A0=88=EC=9D=B4=EC=8B=B1?= =?UTF-8?q?=EC=8B=9C=20actuator=20=EA=B4=80=EB=A0=A8=20=EC=97=94=EB=93=9C?= =?UTF-8?q?=ED=8F=AC=EC=9D=B8=ED=8A=B8=20=EC=A0=9C=EA=B1=B0=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../roomescape/common/config/TraceConfig.kt | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 service/src/main/kotlin/com/sangdol/roomescape/common/config/TraceConfig.kt diff --git a/service/src/main/kotlin/com/sangdol/roomescape/common/config/TraceConfig.kt b/service/src/main/kotlin/com/sangdol/roomescape/common/config/TraceConfig.kt new file mode 100644 index 00000000..c7104bf1 --- /dev/null +++ b/service/src/main/kotlin/com/sangdol/roomescape/common/config/TraceConfig.kt @@ -0,0 +1,28 @@ +package com.sangdol.roomescape.common.config + +import io.micrometer.observation.ObservationPredicate +import jakarta.servlet.http.HttpServletRequest +import org.springframework.beans.factory.annotation.Value +import org.springframework.context.annotation.Bean +import org.springframework.context.annotation.Configuration +import org.springframework.http.server.observation.ServerRequestObservationContext + +@Configuration +class TraceConfig( + @Value("\${management.endpoints.web.base-path}") private val actuatorPath: String +) { + + @Bean + fun excludeActuatorPredicate(): ObservationPredicate { + return ObservationPredicate { _, context -> + if (context !is ServerRequestObservationContext) { + return@ObservationPredicate true + } + + val servletRequest: HttpServletRequest = context.carrier + val requestUri = servletRequest.requestURI + + !requestUri.contains(actuatorPath) + } + } +}