3

我正在尝试使用带有一些附加信息的 logback 邮寄错误日志。例如,当发生错误时,我想添加登录应用程序的用户标签,最好在主题中。我知道如果存在登录用户,我可以捕获所有错误并将用户标签添加到错误消息中,但是有更好的方法吗?现在我的 logback 看起来像这样:

<appender name="EMAIL" class="ch.qos.logback.classic.net.SMTPAppender">
            <SMTPHost>${smtpHost}</SMTPHost>
            <Username>${smtpUser}</Username>
            <Password>${smtpPass}</Password>
            <To>${mail}</To>
            <From>${mailFrom}</From>
            <Subject>SYSTEM ERROR: %logger{20} - %m</Subject>
            <layout class="ch.qos.logback.classic.PatternLayout">
                <Pattern>%date %logger{35} - %message%n</Pattern>
            </layout>

 </appender>
4

1 回答 1

2

首先,实施 MDC 解决方案以在您的应用程序中跟踪用户,请参阅:在 Web 应用程序中记录用户活动。完成此操作后(您可以在许多其他地方从中受益),只需将自定义键添加到您的主题:

<Subject>SYSTEM ERROR: %logger{20} - %X{user} - %m</Subject>

证明可以工作。

于 2012-07-29T11:23:25.670 回答