generated from pricelees/issue-pr-template
[#26] 모니터링 환경 구성 #27
@ -11,10 +11,9 @@ import roomescape.common.config.JacksonConfig
|
|||||||
|
|
||||||
private const val MASK: String = "****"
|
private const val MASK: String = "****"
|
||||||
private val SENSITIVE_KEYS = setOf("password", "accessToken")
|
private val SENSITIVE_KEYS = setOf("password", "accessToken")
|
||||||
|
private val objectMapper: ObjectMapper = JacksonConfig().objectMapper()
|
||||||
|
|
||||||
class RoomescapeLogMaskingConverter(
|
class RoomescapeLogMaskingConverter : MessageConverter() {
|
||||||
private val objectMapper: ObjectMapper = JacksonConfig().objectMapper()
|
|
||||||
) : MessageConverter() {
|
|
||||||
override fun convert(event: ILoggingEvent): String {
|
override fun convert(event: ILoggingEvent): String {
|
||||||
val message: String = event.formattedMessage
|
val message: String = event.formattedMessage
|
||||||
|
|
||||||
@ -42,8 +41,17 @@ class RoomescapeLogMaskingConverter(
|
|||||||
return regex.replace(message) { matchResult ->
|
return regex.replace(message) { matchResult ->
|
||||||
val key = matchResult.groupValues[1]
|
val key = matchResult.groupValues[1]
|
||||||
val delimiter = matchResult.groupValues[2]
|
val delimiter = matchResult.groupValues[2]
|
||||||
|
val maskedValue = maskValue(matchResult.groupValues[3])
|
||||||
|
|
||||||
"${key}${delimiter}${MASK}"
|
"${key}${delimiter}${maskedValue}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun maskValue(value: String): String {
|
||||||
|
return if (value.length <= 2) {
|
||||||
|
MASK
|
||||||
|
} else {
|
||||||
|
"${value.first()}$MASK${value.last()}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user