Javaアプリケーションでlog4jを使用してメール通知を送信します。しかし、構成されたlog4j.propertiesファイルの最初の試みは、charmのように働いていました。しかし、私は、実行時に生成される動的な主題を、欲しい以来、私は成功しません、次のコマンドを試してみました:Log4J SMTPAppender Java
final static Logger logger = Logger.getRootLogger();
...
public static mail(String msg, String subj) {
SMTPAppender mailAppend = new SMTPAppender();
mailAppend.setBufferSize(3);
mailAppend.setSMTPHost("smtphostname");
mailAppend.setTo("[email protected]");
mailAppend.setSubject(subj);
logger.addAppender(mailAppend);
logger.error(msg);
}
は出力:
log4j:ERROR Message object not configured.
だから私は、必要なゲッターを逃したのですか?
はなぜ[のJavaMail API](https://java.net/projects/javamail/pages/Home)を使用していませんか? – Fildor
私はすでにlog4jを使ったファイルロギングをトレースなどに使用していますので、いくつかのより高い優先度で余分な送信メールを実装してからトレースするのが最も簡単な方法です。 – bhlx
なので、警告やエラー通知を送信しようとしていますか?もしそうなら、私はルートロガーそのものではなく、特別なロガーを使用します。それから私はappenderを変更して件名を変更し、新しいものを何度も何度も何度も追加することはしません。メールがエラー/ロギングと関係がない場合は、別のメールライブラリを使用します。 – Fildor