如何配置log4Net

之前曾经用过几次,但是每次都是用完就忘了,下次再用的时候要baidu半天,这次弄通之后直接记下来。

步骤如下。

1. 安装log4Net,直接用NuGet, Install-Package log4Net

2. 把Log4Net.config这个配置文件加到工程里面,切记要把属性改成"Copy Always"。文件内容如下。

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
  </configSections>

  <log4net>

    <root>
      <level value="DEBUG" />
      <appender-ref ref="RollingLogFileAppender" />
    </root>

    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <file value="Log\" />
      <appendToFile value="true" />
      <rollingStyle value="Composite" />
      <maxSizeRollBackups value="100" />
      <maximumFileSize value="2MB" />
      <staticLogFileName value="false" />
      <param name="DatePattern" value="yyyy-MM-dd&quot;.log&quot;"/>
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="[%date]  %thread  %-5level  %message%newline" />
      </layout>
    </appender>

  </log4net>
</configuration>

3. 在工程里面加一个类,内容如下。

using System;

namespace AutoFlashingTool
{
    class Logger
    {

        log4net.ILog _log = null;

        public Logger()
        {

            _log= log4net.LogManager.GetLogger("default");

        }
        public  void WriteDebug(string msg)
        {

            _log.Debug(msg);

        }

        public  void WriteInfo(string msg)
        {

            _log.Info(msg);

        }

        public  void WriteWarning(string msg)
        {

            _log.Warn(msg);

        }

        public  void WriteError(string msg, Exception ex)
        {

            _log.Error(msg, ex);

        }

    }
}

4. 在AssemblyInfo.cs文件里面加上一行,告诉应用程序,log4Net的相关配置在log4Net.config这个文件里面

using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Windows.Media;

// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("AutoFlashingTool")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("BOSCH")]
[assembly: AssemblyProduct("AutoFlashingTool")]
[assembly: AssemblyCopyright("Copyright ? BOSCH 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

// Setting ComVisible to false makes the types in this assembly not visible
// to COM components.  If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]

// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("d9ea3b80-f51a-4b54-8173-a8757d35429e")]

// required to support per-monitor DPI awareness in Windows 8.1+
// see also https://mui.codeplex.com/wikipage?title=Per-monitor%20DPI%20awareness
[assembly: DisableDpiAwareness]

// Version information for an assembly consists of the following four values:
//
//      Major Version
//      Minor Version
//      Build Number
//      Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the ‘*‘ as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Log4Net.config", Watch = true)]

5. 在代码里实例化Logger这个类,就可以调用方法记录Log了。

时间: 2024-10-25 21:27:25

如何配置log4Net的相关文章

单元测试中如何配置log4net

按道理来说,单元测试中基本没有对于日志的需求,这是由于单元测试的定位来决定的. 因为单元测试的思想就是针对的都是小段代码的测试,逻辑明确,如果测试运行不通过,简单调试一下,就能很容易地排查问题.但是单元测试也是一个简便好用的的启动器.总不能调试任何代码,都要我启动一个Windows或者Web项目吧,这样太笨重了,而且项目越大,启动时间越长.在把单元测试用作启动器的情况下,就会有需求使用log4net. 进入正题 如何在一个单元测试项目中,配置log4net: 1. 添加log4net配置文件 这

如何配置Log4Net使用Oracle数据库记录日志

最近在做一个项目的时候,需要增加一个日志的功能,需要使用Log4Net记录日志,把数据插入到Oracle数据库,经过好久的研究终于成功了.把方法记录下来,以备以后查询. 直接写实现方法,分两步完成: 1.使用NuGet Manager管理工具,增加对Oracle.ManagedDataAccess.dll的引用. 2.配置具体的文件. <?xml version="1.0"?><configuration>  <configSections>   

[转]如何配置Log4Net使用Oracle数据库记录日志

本文转自:http://www.cnblogs.com/PatrickLiu/p/6012153.html 最近在做一个项目的时候,需要增加一个日志的功能,需要使用Log4Net记录日志,把数据插入到Oracle数据库,经过好久的研究终于成功了.把方法记录下来,以备以后查询. 直接写实现方法,分两步完成: 1.使用NuGet Manager管理工具,增加对Oracle.ManagedDataAccess.dll的引用. 2.配置具体的文件. <?xml version="1.0"

Web 应用配置Log4Net

1.第一步:在web.config文件添加如下代码: [sourcecode language="csharp"] <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> </configSections> <log4net> <ap

C# 使用/配置Log4Net

1.首先在项目中添加Nuget程序包... 2.然后在NuGet窗体中搜索Log4Net,然后点击安装<安装过程可能会持续几分钟,请耐心等待> 3.在项目中添加一个Config文件,如已有App.config,则直接在其中添加内容: 截图中配置的XML代码如下: <log4net> <logger name="logerror"> <level value="ERROR" /> <appender-ref ref

VS2012 C#使用/配置Log4Net

最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷 学无止境,精益求精   本节探讨如何在VS2012中使用Log4Net 1.首先在项目中添加Nuget程序包... 2.然后在NuGet窗体中搜索Log4Net,然后点击安装<安装过程可能会持续几分钟,请耐心等待> 3.在项目中添加一个Config文件,并命名为:Log4Net.config 截图中配置的XML代码如下: <log4net> <logge

C# 代码 手工 配置 Log4Net 2种方法

这个初始化要在 获取 ILog 接口的代码之前完成, 之后按通常方式使用 log4net 就行了. 不用携带 config 配置文件. 方法1: /// <summary> /// 使用文本记录异常日志 /// </summary> /// <Author>Ryanding</Author> /// <date>2011-05-01</date> public void LoadFileAppender() { string curr

Wcf配置log4net

1.引用log4net dll文件 2.创建log4net.config文件并配置文件信息 <?xml version="1.0" encoding="utf-8"?> <configuration> <!-- Author:GaoBingBing--> <configSections> <section name="log4net" type="log4net.Config.Log

MVC4下配置log4net 五部曲

第一步:把log4net.dll 编译成Framework 4.0 第二步:找到项目的Properties下的AssemblyInfo.在最下面添加:[assembly: log4net.Config.XmlConfigurator(Watch = true)]. 第三步:Web.config <configuration> <configSections> <section name="log4net" type="System.Configu