NLog输出日志到RichTextBox
输出日志到RichTextBox
- 添加引用
- 配置NLog.config
- 调用Logger输出日志
- 运行结果
- 注意事项
添加引用
新建一个windows窗体应用程序后
在项目中引用NLog和NLog.Windows.Forms
在Form界面添加RichTextBox用以日志输出。
配置NLog.config
新建NLog.config文件。内容如下。
该配置支持输出到文件和RichTextBox。
NLog.config需要配置复制到输出目录。
<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd"autoReload="true"throwExceptions="false"internalLogLevel="Off" internalLogFile="c:\temp\nlog-internal.log"><!-- optional, add some variableshttps://github.com/nlog/NLog/wiki/Configuration-file#variables--><variable name="myvar" value="myvalue"/><!--See https://github.com/nlog/nlog/wiki/Configuration-filefor information on customizing logging rules and outputs.--><targets><!--add your targets hereSee https://github.com/nlog/NLog/wiki/Targets for possible targets.See https://github.com/nlog/NLog/wiki/Layout-Renderers for the possible layout renderers.--><!--Write events to a file with the date in the filename.--><target xsi:type="File" name="file" maxArchiveFiles="20" archiveNumbering="Rolling" archiveAboveSize="1048576" fileName="${basedir}/logs/Test.log"layout="${longdate} ${uppercase:${level}} ${message}" /><target name="control" xsi:type="RichTextBox" controlName="richTextBox1" formName="Form1" maxLines="100" autoScroll="true" useDefaultRowColoringRules="true" layout="${longdate} ${uppercase:${level}} ${message}"/></targets><rules><!-- add your logging rules here --><!--Write all events with minimal level of Debug (So Debug, Info, Warn, Error and Fatal, but not Trace) to "f"--><logger name="*" minlevel="Trace" writeTo="file" /><logger name="*" minlevel="Trace" writeTo="control" /></rules>
</nlog>
调用Logger输出日志
实例化Logger,调用接口,实现日志输出到RichTextBox和文件中。
Logger logger;public Form1(){InitializeComponent();}private void Form1_Load(object sender, EventArgs e){logger = NLog.LogManager.GetCurrentClassLogger();}private void timer1_Tick(object sender, EventArgs e){logger.Trace(DateTime.Now);logger.Info(DateTime.Now);logger.Debug(DateTime.Now);logger.Error(DateTime.Now);logger.Fatal(DateTime.Now);}
运行结果
- winform界面输出的日志
- 文件中输出的日志
注意事项
- 注意controlName和formName的名称要和软件中定义的一致。
<target name="control" xsi:type="RichTextBox" controlName="richTextBox1" formName="Form1" maxLines="100" autoScroll="true" useDefaultRowColoringRules="true" layout="${longdate} ${uppercase:${level}} ${message}"/>
- 注意NLog.config是否配置复制到输出目录。
NLog输出日志到RichTextBox相关推荐
- 如何利用NLog输出结构化日志,并在Kibana优雅分析日志?
上文我们演示了使用NLog向ElasticSearch写日志的基本过程(输出的是普通文本日志),今天我们来看下如何向ES输出结构化日志.在Kibana中分析日志. 什么是结构化日志? 当前互联网.物联 ...
- ASP.NET Core 2.1 : 十二.内置日志、使用Nlog将日志输出到文件
应用离不开日志,虽然现在使用VS有强大的调试功能,开发过程中不复杂的情况懒得输出日志了(想起print和echo的有木有),但在一些复杂的过程中以及应用日常运行中的日志还是非常有用. ASP.NET ...
- ASP.NET Core 实战:使用 NLog 将日志信息记录到 MongoDB
在项目开发中,日志系统是系统的一个重要组成模块,通过在程序中记录运行日志.错误日志,可以让我们对于系统的运行情况做到很好的掌控.同时,收集日志不仅仅可以用于诊断排查错误,由于日志同样也是大量的数据,通 ...
- 解决Flink输出日志中时间比当前时间晚8个小时的问题
Flink安装在CentOS7上,默认时间是UTC时间,查看Flink日志,发现输出时间比当前时间晚8个小时. 通过如下命令,调整成北京时间 cp /usr/share/zoneinfo/Asia/S ...
- PyCharm中控制台输出日志分层级分颜色显示
原文:https://blog.csdn.net/linzi1994/article/details/83009233 PyCharm中控制台输出日志分层级分颜色显示 版权声明:本文为博主原创文章,未 ...
- log4net 无法输出日志,跟踪发现IsErrorEnabled等,都是Flase
log4net 无法输出日志,跟踪发现IsErrorEnabled等,都是Flase. 因为这是个半路接手的项目,写法和我之前的习惯不一样,所以也没看出问题出在哪里. 代码如下: private st ...
- slf4j + logback 输出日志:mybatis sql语句
1 引入jar包:maven resposity 中 选择logback classic module <dependency> <groupId>ch.qos.logback ...
- Log4net 中输出日志到文件,文件名根据日期生成
1 简介 1.1 Log4net的优点: 几乎所有的大型应用都会有自己的用于跟踪调试的API.因为一旦程序被部署以后,就不太可能再利用专门的调试工具了.然而一个管 ...
- log4j2分层输出日志
在java mvc框架开发过程中,我们经常的将代码分为类似controller(控制层).service(业务层).rpc(远程接口调用层).dao(数据层)等层级,如果将所有层级的日志全部都打到一个 ...
最新文章
- 1280*720P和1920*1080P的视频在25帧30帧50帧60帧时的参数
- Error:Cannot set the value of read-only property 'outputFile' for ApkVariantOutputImpl_Decorated{apk
- 图论(八)最小生成树
- 异常处理try...catch...throw
- 另一个角度看Java常量池
- 独断专行站在互联网创业风口下的 00 后 CEO,没有钱该如何继续?
- Hibernate 马上入门(二)
- Vagrant (一) - 基本知识
- Flash MX 2004 编程(AS2.0)教程(五)
- 笨方法学python --习题12
- 华为路由器没有虚拟服务器,华为路由器如何设置 华为路由器设置方法介绍【详解】...
- html设置ie9兼容性视图,ie9兼容性设置在哪里 IE兼容性视图在哪里设置?
- 【华为机试真题 Python】勾股数元祖
- Java中List使用Comparator.comparing进行排序
- Android Muti-Window
- 中学生学习心理:学习心理
- “北大数学系扫地僧” 等十人获奖,均分1000万元,达摩院2021青橙奖出炉
- 读jQuery之十七(attribute/property/class)
- 使用 jquery.wordexport.js导出的Word排版
- DDS、openDDS和fast DDS介绍
热门文章
- 1207--铁矿石涨幅
- impala 时区问题
- 利用Python解决b站滑动验证码
- K3/ERP、fineprint8.0版cology8.1最新出炉JAVA功能越来越Fineport8.0
- imessage_如何从iPhone或iPad恢复已删除的iMessage
- 王道计算机组成原理:完整笔记
- eclipse右下角一直提示“jpa project change event handler” 用着很卡
- 单纯形法解线性规划初探(停更,高三毕业填坑)
- 【中国AI合伙人】助理来也胡一川、罗超专访(视频)
- 痞子衡嵌入式:改动i.MXRT1xxx里IOMUXC_GPR寄存器保留位可能会造成系统异常