【问题标题】:Serilog - path to log fileSerilog - 日志文件的路径
【发布时间】:2016-12-19 14:34:44
【问题描述】:

我正在尝试开始使用 serilog。普通的 RollingFile 不符合我的需要(我需要像 logs\20160701-00002.txt 这样的计数),所以我想使用 RollingFileAlternate 作为接收器。

在使用 RollingFile 时我添加了

  loggerInstance = new LoggerConfiguration()
                    .ReadFrom.AppSettings()

并且能够使用以下命令从 App.config 文件中获取路径:

  <add key="serilog:minimum-level" value="Debug" />
  <add key="serilog:using:RollingFile" value="Serilog.Sinks.RollingFile" />
  <add key="serilog:write-to:RollingFile.pathFormat" value="..\Log\MyLOG.LOG" />

现在我切换到 RollingFileAlternate :

        <add key="serilog:minimum-level" value="Debug" />
        <add key="serilog:using:RollingFileAlternate" value="Serilog.Sinks.RollingFileAlternate" />
        <add key="serilog:write-to:RollingFileAlternate.logsDirectory" value="..\Log\test.log" />
        <add key="serilog:write-to:RollingFileALternate.logsFolder" value="..\Log" />

我尝试使用 logsDirectory 和 logsFolder,因为它们都在 https://github.com/BedeGaming/sinks-rollingfile 的示例中进行了描述 但我的程序不会创建文件。

如果我添加到 Logger 配置中:

        loggerInstance = new LoggerConfiguration()
            .ReadFrom.AppSettings()
            .WriteTo.RollingFileAlternate("..\\log")

将使用文件夹名称并将日志文件放在此文件夹中。

有人可以帮助我并告诉我我缺少什么吗?

【问题讨论】:

    标签: c# logging serilog


    【解决方案1】:

    文档可能有问题;该参数称为logDirectory,而不是logsDirectory。所以,你需要:

    <add key="serilog:write-to:RollingFileAlternate.logDirectory" value="..\Log" />
    

    【讨论】:

    • 谢谢!我需要使用“logDirectory”。现在它正在工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多