触发电子邮件到不同的ID取决于loglevel

时间:2011-09-15 05:46:16

标签: java log4j

我创建了一个具有不同级别日志记录的应用程序。现在我遇到了将错误记录到开发团队并且对开发人员和管理员致命的情况。这是我试过的代码..

    log4j.rootlogger=DEBUG, email, email2
    #email
    log4j.appender.email=org.apache.log4j.net.SMTPAppender
    log4j.appender.email.SMTPHost=smtp.company.com
    log4J.appender.email.Threshold=error
    log4j.appender.email.From=emailNotification
    log4j.appender.email.To=dev@company.com
    log4j.appender.email.SMTPUsername=user@company.com
    log4j.appender.email.Subject=email Notification from Tomcat Server
    log4j.appender.email.layout=org.apache.log4j.PatternLayout
    log4j.appender.email.layout.ConversionPattern=%d%d{dd MMM HH:mm:ss}%p %t %c - %m%n
    log4j.appender.email.BufferSize=1

    #email2
    log4j.appender.email2=org.apache.log4j.net.SMTPAppender
    log4j.appender.email2.SMTPHost=smtp.company.com
    log4J.appender.email2.Threshold=FATAL
    log4j.appender.email2.From=emailNotification
    log4j.appender.email2.To=admin@company.com, manager@company.com
    log4j.appender.email2.SMTPUsername=user@company.com
    log4j.appender.email2.Subject=email Notification from Tomcat Server
    log4j.appender.email2.layout=org.apache.log4j.PatternLayout
    log4j.appender.email2.layout.ConversionPattern=%d%d{dd MMM HH:mm:ss}%p %t %c - %m%n
    log4j.appender.email2.BufferSize=1

当我用

运行我的应用程序时
    logger.error("error:"+e);

它还向管理员和经理发送了电子邮件。所以即使它是错误/致命的,它也会触发所有人。

任何诡计?有人能帮我吗。

1 个答案:

答案 0 :(得分:1)

“log4J.appender.email2.Threshold”中有拼写错误(字母J在CAPS中)。 ERROR是默认值,因此在email1中无关紧要。

如果有人复制粘贴此代码段...