步骤如下:
1.   创建一个LoggingConfiguration对象,用来保存配置信息
2.   至少创建一个输出目标对象
3.   设置该输出目标对象的属性
4.   设置LoggingRule对象,并将其添加到LoggingConfiguration对象的LoggingRules集合中
5.   启用该LoggingConfiguration对象(将LogManager.Configuration设定为该LoggingConfiguration对象即可)

下面的代码片段以编程方式创建了两个输出目标对象——支持颜色的控制台和文件,并将记录等级等于或高于Debug的日志信息发送至这两个输出目标:

 using NLog; using NLog.Targets; using NLog.Config; using NLog.Win32.Targets; class Example
{ static void Main(string[] args) { // Step 1. Create configuration object
         LoggingConfiguration config = new LoggingConfiguration(); // Step 2. Create targets and add them to the configuration
 ColoredConsoleTarget consoleTarget = new ColoredConsoleTarget(); config.AddTarget("console", consoleTarget); FileTarget fileTarget = new FileTarget(); config.AddTarget("file", fileTarget); // Step 3. Set target properties
         consoleTarget.Layout = "${date:format=HH//:MM//:ss} ${logger} ${message}"; fileTarget.FileName = "${basedir}/file.txt"; fileTarget.Layout = "${message}"; // Step 4. Define rules
         LoggingRule rule1 = new LoggingRule("*", LogLevel.Debug, consoleTarget); config.LoggingRules.Add(rule1); LoggingRule rule2 = new LoggingRule("*", LogLevel.Debug, fileTarget); config.LoggingRules.Add(rule2); // Step 5. Activate the configuration
 LogManager.Configuration = config; // Example usage
 Logger logger = LogManager.GetLogger("Example"); logger.Trace("trace log message"); logger.Debug("debug log message"); logger.Info("info log message"); logger.Warn("warn log message"); logger.Error("error log message"); logger.Fatal("fatal log message"); } }

转载于:https://www.cnblogs.com/fengjunkuan/p/4043191.html

以编程方式进行NLog的配置【转】相关推荐

  1. SpringBoot 2.0 编程方式配置,不使用默认配置方式

    SpringBoot的一般配置是直接使用application.properties或者application.yml,因为SpringBoot会读取.perperties和yml文件来覆盖默认配置: ...

  2. WCF编程系列(六)以编程方式配置终结点

    WCF编程系列(六)以编程方式配置终结点 示例一中我们的宿主程序非常简单:只是简单的实例化了一个ServiceHost对象,然后调用open方法来启动服务.而关于终结点的配置我们都是通过配置文件来完成 ...

  3. eap wifi 证书_如何以编程方式在Android中安装CA证书(用于EAP WiFi配置)?

    我的目标:在Android programmitcally中创建一个EAP WiFi配置 - 包括CA证书 . 问题:如何以编程方式安装CA证书(然后在EAP WiFi配置中引用该证书)? 但是,假设 ...

  4. eap方法 华为手机怎么连wifi_如何以编程方式在Android中安装CA证书(用于EAP WiFi配置)?...

    我的目标: 在 Android programmitcally中创建EAP WiFi配置 – 包括CA证书. 问题: 如何以编程方式安装CA证书(然后在EAP WiFi配置中引用该证书)? 但是,这假 ...

  5. 编程方式刷新Squid缓存服务器的五种方法

    网站进行内容更新是常有的事情,当被缓存的资源更新时,前端Squid 缓存服务器内容也必须要相应的更新,否则用户就可能会看到过期的数据.当没有程序支持时就需要每次登录到服务器上执行刷新操作,在服务器数量 ...

  6. Spring Bean配置方式之一:Java配置

    简介: Spring bean 是使用传统的 XML 方法配置的.在这篇文章中,您将学习使用基于纯 Java 的配置而非 XML 来编写 Spring bean 并配置它们.本文将介绍可用来配置 be ...

  7. 您如何确定以编程方式发送的电子邮件不会自动标记为垃圾邮件?

    这是一个棘手的问题,我一直依靠诸如基于权限的电子邮件(即仅发送给您有权发送给其的人)之类的技术,而不使用公然的垃圾邮件术语. 最近,我以编程方式发送的某些电子邮件已经开始自动洗牌到用户的垃圾邮件文件夹 ...

  8. 使用React Router以编程方式导航

    通过react-router我可以使用Link元素来创建由react路由器本地处理的链接. 我在内部看到它调用this.context.transitionTo(...) . 我想从下拉列表中进行导航 ...

  9. 如何让ASP.NET默认的资源编程方式支持非.ResX资源存储

    之前写了两篇文章<.NET资源并不限于.ResX文件>(上篇.下篇),介绍了如何通过自定义ResourceManager的方式来扩展资源的存储形式.在那篇文章中,我定义了三种基于独立文件的 ...

最新文章

  1. 轻松删除所有安装的gem
  2. LeetCode——数学
  3. 坯子库和suapp哪个好用_「双全科技」进销存软件哪个简单好用,管家婆进销存软件教程...
  4. 负载(Load)分析及问题排查
  5. 云服务器 文件服务,云服务 做文件服务器
  6. Linux创建进程必须fork么,Linux - fork() 创建进程
  7. 如何在ant脚本中获得svn版本号
  8. C++中的模板那点事
  9. papers for mac 破解版永久激活方法
  10. 贝壳雕刻者怎样才能创造出更好的作品
  11. 关于命运(详细娱乐诠释)
  12. elementUI设置标签页
  13. 计算机没有网络时间不准如何设置,轻松解决电脑时间不准的方法
  14. HTML如何实现滚动文字
  15. 清理C盘(浪费了很多时间,终于找到了一个比较高效的方法)
  16. updated beforeUpdate() Updated() 生命周期-销毁阶段 vue的nextTick@stage3---week2--day4-1
  17. android 应用程序内存上限,Android APP的最大可用内存
  18. android如何加载长图
  19. 智能AI伪原创工具文章在线生成源码
  20. 遵义微红科技社群直播分销系统支持第三方平台商品一键导入

热门文章

  1. Jquery.LazyLoad.js修正版下载,实现图片延迟加载插件
  2. 如何训练大学生的工程实战能力
  3. 10个小动作帮你简化生活
  4. slam中特征点归一化原因以及方法
  5. cocos对象池的使用
  6. 优化一个小时不出结果的SQL
  7. uva 101 木块问题
  8. 【AHOI2005】病毒检测
  9. Centos 下安装Docker 遇到的一些错误
  10. decimal(C# 参考)