MapRewritePolicy将评估包含MapMessage的LogEvent,并添加或更新Map的元素。这仅在您的应用程序调用时有效logger.info(new MapMessage(keyValueMap))
。我怀疑这不是您的应用程序当前正在执行的操作。
通常,您的消息将是SimpleMessage(如果您调用logger.info("Just a string without parameters")
)或ParameterizedMessage(如果您调用logger.info("Hi {}!", name)
)。RewriteAppender将无法对SimpleMessage或ParameterizedMessages进行任何操作,因此什么也不会被替换…
您可能想看一下PatternLayout的文档:如果使用replace{pattern}{regex}{substitution}
模式,它可以用一些替换值替换字符串消息中的正则表达式。