【发布时间】:2016-11-22 00:43:27
【问题描述】:
我正在使用 log4j2 设置一个 SMTP 附加程序以在 mule 中使用,我想在电子邮件中包含错误来自的流的名称。
这可能吗?
【问题讨论】:
标签: logging mule esb log4j2 anypoint-studio
我正在使用 log4j2 设置一个 SMTP 附加程序以在 mule 中使用,我想在电子邮件中包含错误来自的流的名称。
这可能吗?
【问题讨论】:
标签: logging mule esb log4j2 anypoint-studio
我相信 SMTP Appender 的默认布局是 HTML Layout。此布局具有标题属性。您可以尝试在标题属性中嵌入ThreadContext map lookup。例如,title="$${ctx:flow}"。
在 PatternLayout 中,您可以通过在模式中嵌入%X{flow} 来实现相同的目的。
在您的 Java 代码中,您可以调用 ThreadContext.put("flow", "someValue");
并且在该线程中的所有后续登录都将具有“流”的值。
【讨论】:
MEL 表达式#[flow.name] 将为您提供当前流的名称。这可以直接使用,也可以在解析模板中使用来构建您的消息正文。
【讨论】: