标签:
1.在项目中引入log4net.dll组件;
2.在App.congfig中做如下修改
在加入如下内容:
这个节点最好放在<configuration>下的第一个位置,不然在服务里会报错。
<configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> </configSections>
<log4net>
<!--定义输出到文件中-->
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<!--定义文件存放位置-->
<file value="log\\"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyy\\yyyyMM\\yyyyMMdd‘.txt‘"/>
<staticLogFileName value="false"/>
<param name="MaxSizeRollBackups" value="100"/>
<layout type="log4net.Layout.PatternLayout">
<!--每条日志末尾的文字说明-->
<!--输出格式-->
<!--样例:2015-06-08 13:42:32,111 [10] INFO Log4NetDemo.MainClass [(null)] - info-->
<conversionPattern value="%newline %n记录时间:%date %n线程ID:[%thread] %n操作类:%logger property: [%property{NDC}] - %n日志描述:%message%newline %n"/>
</layout>
</appender>
<root>
<level value="INFO"/>
<!--文件形式记录日志-->
<appender-ref ref="RollingLogFileAppender"/>
</root>
</log4net>
3.新建LogHelp.cs文件
using System; using System.Collections.Generic; using System.Text; using log4net; using System.Diagnostics; using System.Reflection; namespace WinService { public class LogHelper { private static readonly ILog logInfo = LogManager.GetLogger("Log"); private static readonly ILog logErr = LogManager.GetLogger("Err"); /// <summary> /// 记录正常的消息 /// </summary> /// <param name="msg">消息内容</param> public static void info(string msg) { logInfo.Info(msg); } /// <summary> /// 记录异常信息 /// </summary> /// <param name="msg">异常信息内容</param> public static void error(string msg) { StackTrace stackTrace = new StackTrace(); StackFrame stackFrame = stackTrace.GetFrame(1); MethodBase methodBase = stackFrame.GetMethod(); logErr.Error("类名:" + methodBase.ReflectedType.Name + " 方法名:" + methodBase.Name + " 信息:" + msg); } } }
4.在项目的Properties\AssemblyInfo.cs文件中加入如下内容:
[assembly: log4net.Config.XmlConfigurator(Watch = true)]
标签:
原文地址:http://www.cnblogs.com/xbding/p/4563343.html