0

Log4Net ライブラリは初めてで、私が把握できていないことがあります。

バッファはメモリ内のみにあると思いますよね?アプリケーションの新しいインスタンスを開始すると、バッファは再初期化されますか? アプリケーションが x 回失敗した後にのみテクニカル サポートに電子メールを送信するように言われたという要件があります。このアプリケーションは、スケジュールに従って (約 2 分ごとに) 実行されます。失敗した場合は、2 分後に再試行されます。何度も失敗した場合 (エラーがスローされたために失敗している場合) は、電子メールを送信する必要があります。

現時点でこれを行う最も簡単な方法は、失敗した試行回数を user.config に保存することです。次に、プログラムが例外チェックをキャッチして、失敗した試行の回数を確認し、しきい値に達した場合は、正しいロガー/アペンダーを使用して電子メールを送信します。プログラムが正常に実行された後、プログラムが終了する前に最後に行うことは、user.config 設定を 0 回の試行失敗にリセットすることです。

より良い方法はありますか?おそらく、ロッシー設定で何かできるようにバッファを永続化する方法はありますか?

4

1 に答える 1

0

バッファはメモリ内にあります。つまり、スケジュール タスクを考えてアプリケーションを何度も起動する場合は、何らかの方法でデータを永続化する必要があります。

そのためにファイルまたはレジストリを使用します(他の永続的なソリューション-データベース、memcached ...など)

log4netでメッセージを送信するには、この投稿を見ることができます

于 2012-06-20T18:27:05.323 に答える