generated from pricelees/issue-pr-template
[#37] 테마 스키마 재정의 #38
@ -16,6 +16,8 @@ import roomescape.member.infrastructure.persistence.MemberEntity
|
|||||||
|
|
||||||
private val log: KLogger = KotlinLogging.logger {}
|
private val log: KLogger = KotlinLogging.logger {}
|
||||||
|
|
||||||
|
const val MDC_MEMBER_ID_KEY: String = "member_id"
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
class AuthInterceptor(
|
class AuthInterceptor(
|
||||||
private val memberFinder: MemberFinder,
|
private val memberFinder: MemberFinder,
|
||||||
@ -42,7 +44,7 @@ class AuthInterceptor(
|
|||||||
throw AuthException(AuthErrorCode.ACCESS_DENIED)
|
throw AuthException(AuthErrorCode.ACCESS_DENIED)
|
||||||
}
|
}
|
||||||
|
|
||||||
MDC.put("member_id", "${member.id}")
|
MDC.put(MDC_MEMBER_ID_KEY, "${member.id}")
|
||||||
log.info { "[AuthInterceptor] 인증 완료. memberId=${member.id}, role=${member.role}" }
|
log.info { "[AuthInterceptor] 인증 완료. memberId=${member.id}, role=${member.role}" }
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
@ -51,7 +53,7 @@ class AuthInterceptor(
|
|||||||
try {
|
try {
|
||||||
val memberId = jwtHandler.getMemberIdFromToken(accessToken)
|
val memberId = jwtHandler.getMemberIdFromToken(accessToken)
|
||||||
return memberFinder.findById(memberId)
|
return memberFinder.findById(memberId)
|
||||||
.also { MDC.put("member_id", "$memberId") }
|
.also { MDC.put(MDC_MEMBER_ID_KEY, "$memberId") }
|
||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
log.info { "[AuthInterceptor] 회원 조회 실패. accessToken = $accessToken" }
|
log.info { "[AuthInterceptor] 회원 조회 실패. accessToken = $accessToken" }
|
||||||
val errorCode = AuthErrorCode.MEMBER_NOT_FOUND
|
val errorCode = AuthErrorCode.MEMBER_NOT_FOUND
|
||||||
|
|||||||
@ -3,6 +3,7 @@ package roomescape.common.log
|
|||||||
import com.fasterxml.jackson.databind.ObjectMapper
|
import com.fasterxml.jackson.databind.ObjectMapper
|
||||||
import jakarta.servlet.http.HttpServletRequest
|
import jakarta.servlet.http.HttpServletRequest
|
||||||
import org.slf4j.MDC
|
import org.slf4j.MDC
|
||||||
|
import roomescape.auth.web.support.MDC_MEMBER_ID_KEY
|
||||||
|
|
||||||
enum class LogType {
|
enum class LogType {
|
||||||
INCOMING_HTTP_REQUEST,
|
INCOMING_HTTP_REQUEST,
|
||||||
@ -33,7 +34,7 @@ class ApiLogMessageConverter(
|
|||||||
controllerPayload: Map<String, Any>,
|
controllerPayload: Map<String, Any>,
|
||||||
): String {
|
): String {
|
||||||
val payload: MutableMap<String, Any> = commonRequestPayload(LogType.CONTROLLER_INVOKED, request)
|
val payload: MutableMap<String, Any> = commonRequestPayload(LogType.CONTROLLER_INVOKED, request)
|
||||||
val memberId: Long? = MDC.get("member_id")?.toLong()
|
val memberId: Long? = MDC.get(MDC_MEMBER_ID_KEY)?.toLong()
|
||||||
if (memberId != null) payload["member_id"] = memberId else payload["member_id"] = "NONE"
|
if (memberId != null) payload["member_id"] = memberId else payload["member_id"] = "NONE"
|
||||||
|
|
||||||
payload.putAll(controllerPayload)
|
payload.putAll(controllerPayload)
|
||||||
@ -46,7 +47,7 @@ class ApiLogMessageConverter(
|
|||||||
payload["type"] = request.type
|
payload["type"] = request.type
|
||||||
payload["status_code"] = request.httpStatus
|
payload["status_code"] = request.httpStatus
|
||||||
|
|
||||||
MDC.get("member_id")?.toLongOrNull()
|
MDC.get(MDC_MEMBER_ID_KEY)?.toLongOrNull()
|
||||||
?.let { payload["member_id"] = it }
|
?.let { payload["member_id"] = it }
|
||||||
?: run { payload["member_id"] = "NONE" }
|
?: run { payload["member_id"] = "NONE" }
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user