如果我的cron作业中有任何意外错误,我将在logback中使用SMTPAppend发送电子邮件通知。因此,我使用相同的标记:
if (x == null) {
_logger.error(SMTP_TRIGGER,"msg1");
} else {
....
}
if (y == null) {
_logger.error(SMTP_TRIGGER,"msg2");
} else {
...
}
logback.xml:
<appender name="Email" class="ch.qos.logback.classic.net.SMTPAppender">
<smtpHost>smtpHost</smtpHost>
<smtpPort>port</smtpPort>
<to>emailStr</to>
<from>toStr</from>
<subject>Cron Issues</subject>
<username>username</username>
<password>password</password>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>ERROR</level>
</filter>
<evaluator class="ch.qos.logback.classic.boolex.JaninoEventEvaluator">
<expression>
(marker != null && marker.contains("SMTP_TRIGGER"))
</expression>
</evaluator>
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>%date - %message%n</pattern>
</layout>
</appender>
现在,每当x和y都为空时,我将收到两封单独的电子邮件,其中一封邮件为“ msg1”,另一封邮件为“ msg2”。我想收到一封包含所有此类消息(msg1和msg2)的电子邮件。
另一件事是,我还没有任何方法可以将“高重要性”设置为回发邮件。有什么办法可以做到的吗?