【问题标题】:NLog enabling logging from command lineNLog 从命令行启用日志记录
【发布时间】:2013-02-07 11:45:16
【问题描述】:

您知道是否有办法以编程方式启用某些日志记录级别?

我希望在正常应用程序使用期间仅启用错误日志记录,但能够在需要时通过将命令行参数传递给应用程序来打开更详细的信息。

【问题讨论】:

    标签: .net logging nlog


    【解决方案1】:

    给定一个像这样配置的基本记录器

    <targets>
      <target xsi:type="File" name="payroll" fileName="c:\temp\payroll.log"             
            layout="${longdate} ${uppercase:${level}} ${message}" />
    </targets>
    <rules>
        <logger name="*" minlevel="Error" writeTo="payroll" />
    </rules>
    

    您可以通过编程方式添加到日志级别

        static void Main(string[] args)
        {
            if (args.Contains("Info"))
            {
                var logger = NLog.LogManager.Configuration.LoggingRules.First(x => x.Targets.First().Name == "payroll");
                logger.EnableLoggingForLevel(LogLevel.Info);    
            }
    
            var proc = new PayrollProcessor();
            proc.Process();
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多