有什么办法可以暂停Serilog吗?

时间:2019-04-08 09:44:04

标签: c# serilog

我的应用程序中有Seri​​log。当应用程序运行时,它将一些信息写入文本文件。该应用程序中也有一个电子邮件表单。我想将最后的日志文件附加到消息中,但是我不能,因为这些文件正在被进程使用。

我尝试将SHARED标志设置为true,但这无济于事。

此外,我还有一个想法,在连接时通过CloseAndFlush()方法暂停日志记录。但是我不知道如何重新启动它。

    private static LoggerConfiguration Logger = new LoggerConfiguration()
                                                   .MinimumLevel.Information()
                                                   .WriteTo.File(Path.Combine(MailHelper.SerilogPath, $"{Program.CurrentUser.Login}_actions_log_.txt"),
                                                                 rollingInterval: RollingInterval.Hour, shared: true,
                                                                 retainedFileCountLimit: 10);

    public static void CreateLogger()
    {
        Log.Logger = Logger.CreateLogger();           
    }


    public static void PauseLogging()
    {
        Log.CloseAndFlush();
    }

主要思想是轻松地将日志文件附加到消息中。记录必须在记录之前和之后进行。

但是知道它被进程阻止了。

0 个答案:

没有答案
相关问题