log4net快速使用流程
1、Nuget安装,当前版本2.0.8
2、创建log4net.config文件,文件内容如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<log4net debug="true">
<root>
<level value="DEBUG" />
<appender-ref ref="RollingLogFileAppender" />
<appender-ref ref="ConsoleAppender" />
</root>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" >
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date] %level [%thread][%c{1}:%line] - %m%n" />
</layout>
</appender>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender" >
<param name="File" value="game" />
<param name="DatePattern" value="'.'yyyy-MM-dd-HH'.log'" />
<param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date] %level [%thread][%c{1}:%line] - %m%n" />
</layout>
</appender>
</log4net>
</configuration>
注意:要在文件属性中将“复制到输出目录”选项设置为“如果较新则复制”
3、在文件AssemblyInfo.cs中加上:
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]
4、代码用法:
using log4net;
private static readonly ILog logger = LogManager.GetLogger(typeof(GameClient));
Thread.CurrentThread.Name = "main";//为了将主线程名与其他线程区别开
//初始化log4net
log4net.Config.XmlConfigurator.Configure();
logger.Debug("初始化连接开始");
logger.InfoFormat("测试日志 name={0}","client");
5、输出结果:
[2017-08-11 20:18:19,350] DEBUG [main][GameClient:24] - 初始化连接开始
[2017-08-11 20:18:19,363] DEBUG [main][GameClient:28] - 初始化连接完毕
[2017-08-11 20:18:19,364] INFO [main][SuperSocketDemo:35] - 测试日志 name=client
UPDAT:
不知道为什么代码不能编辑了,只能暂时放在下面。
如果需要通过DebugView这类的工具查看Trace信息,配置内容如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<log4net debug="true">
<root>
<level value="DEBUG" />
<appender-ref ref="RollingLogFileAppender" />
<appender-ref ref="ConsoleAppender" />
<appender-ref ref="TraceAppender" />
</root>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender" >
<param name="File" value="LoadOrderInterface.log" />
<param name="DatePattern" value="'.'yyyy-MM-dd-HH'.log'" />
<param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date] %level [%thread][%c{1}:%line] - %m%n" />
</layout>
</appender>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" >
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date] %level [%thread][%c{1}:%line] - %m%n" />
</layout>
</appender>
<appender name="TraceAppender" type="log4net.Appender.TraceAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %level [%thread] %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>
</log4net>
</configuration>
Level定义记录的日志级别,表示要记录哪个级别以上的日志,级别由低往高依次是:
ALL
DEBUG
INFO
WARN
ERROR
FATAL
None
log4net快速使用流程的更多相关文章
- Log4net快速索引参考
官方项目地址:The Apache log4net project 本文内容仅为相关项参考,不进行具体使用讨论 另转载请注明出处 Log4net快速索引参考 Log4net主要有以下三个部件: log ...
- Android 支付宝以及微信支付快速接入流程
简介 随着移动支付的普及,越来越多的App采用第三发支付,在这里我们以支付宝为例,做一个快速集成! 一.Android快速实现支付宝支付 1.首先,我们需要前往支付宝开放平台,申请我们的支付功能:ht ...
- log4net 快速上手使用
*本随笔仅限快速上手,如需深入探究,可查阅其它博友. 一.下载log4net.dll并添加引用; 二.添加配置文件 log4net.xml : <?xml version="1.0&q ...
- Log4net快速配置使用指南。(快速搭建log4net日志平台手册)
每做一个新项目,都会用到log4net,但总是忘记如何快速配置.有时在网上搜半天也找不到好的模板,大都在介绍参数的使用,在此做下总结,争取下次用时仅10分钟就可搭建好log4net. 直接上介绍的步骤 ...
- Android开发——支付宝和微信支付快速接入流程
一.Android快速实现支付宝支付 1.首先,我们需要前往支付宝开放平台,申请我们的支付功能:https://open.alipay.com/platform/home.htm 支付宝首页 这里 有 ...
- Log4net快速搭建
nuget安装log4net 2018.12.10当前版本为2.0.8 找到所在项目的[Properties->AssemblyInfo] 在底部加上 [assembly: log4net.Co ...
- 用log4net快速构建asp.net 异常日志
log4net是一个非常完善的日志组件. 有着强大的可配置性. 有助于提高开发效率 .log4net是apache组织开发的日志组件, 同其姐妹log4j一样, 是一个开源项目. 可以以插件的形式应用 ...
- Log4Net快速配置
1. Log4NET的概念: a) 级别:trace.debug.info.warn.error.fatal.常用debug(调试信息,程序员临时跟踪执行,在正式运行的项目中应该不显示):warn(警 ...
- log4net快速上手
原文地址:https://www.cnblogs.com/lsgsanxiao/p/5845300.html 略有删改 1.配置文件,可以单独创建log4net.config文件,然后手动指定目录,也 ...
随机推荐
- D3基础---简介和数据
D3.js是一种数据操作类型的javascript库(也可视其为插件):结合HTML,SVG和CSS,D3可以图形化的,生动的展现数据. d3获取:http://d3js.org/ 在代码文件中引入D ...
- [javaSE] java上传图片给PHP
java通过http协议上传图片给php文件,对安卓上传图片给php接口的理解 java文件: import java.io.DataOutputStream; import java.io.File ...
- javascript 文字大小自动适应文本框 (文字大小自动调整)
javascript 文字大小自动适应文本框 (文字大小自动调整) TOC 思考 思考一:面积法 思考二:微调法 代码 在进行类似微博墙之类的展示页面中,经常会遇到这样的需求:在固定大小的区域放入字数 ...
- AngularJS模块之$scope
Angular中创建一个模块: angular.module("myApp",[]). controller("myController",function(& ...
- BFC(Box Formatting Context)的原理
BFC 已经是一个耳听熟闻的词语了,网上有许多关于 BFC 的文章,介绍了如何触发 BFC 以及 BFC 的一些用处(如清浮动,防止 margin 重叠等).虽然我知道如何利用 BFC 解决这些问题, ...
- PowerDesigner设置所有int主键自增脚本
'*****************************************************************************dim model 'current mod ...
- 关于圆角border-radius
一.border-radius 可以同时设置1-4个值 a)1个值 控制4个圆角 b)2个值 第1个控制左上角和右下角 第2个值控制左下角和右上角 c)3个值 第1个控制 第2个值控制左 ...
- 安装配置postgreSQL+pgcli+pgadmin3
记录了postgreSQL数据库的完整的安装配置过程,以及postgreSQL的pgcli命令行智能提醒扩展,pgadmin3图形化管理客户端的配置安装.此postgresql是bigsql版安装详情 ...
- 利用Grahics 进行图片裁剪
这两天做了一个图片对比工具,里面要处理两张大的图片,所以要对图片先进行裁剪最开始用了 /// <summary> /// 裁剪图片 /// </summa ...
- 什么是shell? bash和shell有什么关系?
什么是Shell? shell是你(用户)和Linux(或者更准确的说,是你和Linux内核)之间的接口程序.你在提示符下输入的每个命令都由shell先解释然后传给Linux内核. ...