3

例外の本文を文字列に変換し、その例外を Java の特定のアドレスに電子メールで送信しています。例外文字列をhtmlでフォーマットして、スタックオーバーフローで表示されるのと同じように、人間が読める形式にしたいと考えています。Javaにこれを行うライブラリがあるかどうか疑問に思っていましたか?

StringWriter stringWriter = new StringWriter();
PrintWriter printWriter = new PrintWriter(stringWriter);
t.printStackTrace(printWriter);
String body = stringWriter.toString();
//add html to body here
setMessageBody(body);

詳しく言うと、行を で区切る、<br/>クラス名の名前を別の色のフォントで表示する、行番号を別の色のフォントで表示する、などです。これはいくつかの正規表現で実行できますが、すぐに使用できるライブラリがあるかどうか疑問に思っていました。

4

3 に答える 3

1

はい、いくつかあり、「無料」のメール バックエンドも付属しています。 slf4jlog4jなどの Java ロギング フレームワークを使用します。

これらのフレームワークはすべて、少し設定するだけで HTML メールを生成できます。一般的なアプローチは次のようになります。

  • すべての例外に対して 1 つのロガーを作成するか、クラスごとに 1 つのロガーを作成します。前者は設定が簡単で、後者は自由度が高い
  • 電子メールを送信するように構成されているこのロガーにアペンダーを追加します

アプリでロギングを使用したくない場合は、既存のフォーマッターを再利用する独自のアペンダーを作成できます。

于 2012-04-30T09:27:31.190 に答える