2

BufferingTargetWrapperで電子メールを送信するために を使用するように、アプリケーションで NLog を構成しましたMailTarget

BufferingTargetWrapper私が直面している問題は、アプリケーションが未処理の例外から終了する前に、NLog を強制的に空にする方法が見つからないことです。

現在のアプリ ドメインの UnhandledException イベントから呼び出しLogManager.Flush()てみましたが、動作しません。LogManager.DisableLogging()

メールを送信するにはどうすればよいですか?

4

1 に答える 1

0

BufferingTargetWrapper を呼び出して、強制的にログを書き込むことができます。LogManger.Flush が機能しないのは奇妙です。

var buffWapper =
            LogManager.Configuration.FindTargetByName("BufferingTargetWrapper") as BufferingTargetWrapper;
        if (buffWapper != null)
            buffWapper.Flush();

また

var buffWapper =
            LogManager.Configuration.FindTargetByName("BufferingTargetWrapper") as BufferingTargetWrapper;
        if (buffWapper != null)
        {
            buffWapper.BufferSize = 1;
            buffWapper.Flush();
        }
于 2011-07-01T16:45:49.703 に答える