在Java中设置log4j SMTPAppender字段

时间:2015-05-21 19:08:35

标签: java logging log4j slf4j

我正在使用slf4j和log4j通过电子邮件记录Java桌面应用程序中的错误。 目前我使用log4j属性文件来设置用户名,密码等字段:

log4j.appender.email.SMTPHost = smtp.gmail.com
log4j.appender.email.SMTPUsername = example@gmail.com
log4j.appender.email.SMTPPassword = examplepass
# ...etc...

这很好但我更喜欢在Java代码中动态设置密码。

我已经看到方法SMTPAppender.setSMTPPassword似乎是我想要的但我无法看到如何获取SMTPAppender对象的句柄来调用该方法。 我在Log4j programmatically setting SMTP settings is not completely working中尝试过OP的片段,但我的logger对象没有getAllAppenders()方法。我认为这是因为我使用的是slf4j记录器而不是普通的log4j记录器。

那么,如何在Java而不是.properties文件中设置这些属性?

0 个答案:

没有答案