• 如何配置Log4netStep by step


    Step 1.添加dll

    下载log4net.dll,并添加到项目中,这里我的版本是1.2.10.0,如图:

    Step 2.修改AssemblyInfo.cs文件

    在这个文件里,添加如下代码:

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

    Step 3.修改Web.config配置文件 

    <?xml version="1.0" encoding="utf-8"?>
    <configuration> 
      <configSections>
        <section name="log4net"   type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
      </configSections>
      <appSettings/>
        <system.web>
            <!--
                设置 compilation debug="true" 将调试符号插入
                已编译的页面中。但由于这会
                影响性能,因此只在开发过程中将此值
                设置为 true。
            -->
            <compilation debug="true" />
            <!--
                通过 <authentication> 节可以配置 ASP.NET 使用的
                安全身份验证模式,
                以标识传入的用户。
            -->
            <authentication mode="Windows" />
            <!--
                如果在执行请求的过程中出现未处理的错误,
                则通过 <customErrors> 节可以配置相应的处理步骤。具体说来,
                开发人员通过该节可以配置
                要显示的 html 错误页
                以代替错误堆栈跟踪。

            <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
                <error statusCode="403" redirect="NoAccess.htm" />
                <error statusCode="404" redirect="FileNotFound.htm" />
            </customErrors>
            -->
        </system.web>
      <log4net>
        <root>
          <level value="DEBUG" />
          <appender-ref ref="LogFileAppender" />
        </root>
        <logger name="ExceptionHandler">
          <level value="DEBUG"/>
        </logger>
        <appender name="LogFileAppender" type="log4net.Appender.FileAppender" >
          <param name="File" value="E:\\log-file.txt" />
          <param name="AppendToFile" value="true" />
          <layout type="log4net.Layout.PatternLayout">
            <param name="Header" value="[Header]\r\n"/>
            <param name="Footer" value="[Footer]\r\n"/>
            <param name="ConversionPattern" value="%d [%t] %-5p %c [%x]  - %m%n" />
          </layout>
        </appender>
        <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" >
          <layout type="log4net.Layout.PatternLayout">
            <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
          </layout>
        </appender>
      </log4net>
    </configuration>

    注:详细参数请参考http://logging.apache.org/log4net/release/manual/introduction.html

    这里要说明注意点 <appender-ref ref="LogFileAppender" />的引用必须和 <appender name="LogFileAppender" type="log4net.Appender.FileAppender" >name对应。

    Step 4. 测试应用

    这里我的测试代码是直接放在default.aspx.cs的load事件里的,如下:

     protected void Page_Load(object sender, EventArgs e)
            {

                log4net.ILog log = log4net.LogManager.GetLogger("ExceptionHandler");
                try
                {
                    throw new Exception();
                }
                catch (Exception ex)
                {
                    log.Debug(ex.StackTrace + " " + ex.Message);
                }

            }

    注:GetLogger("ExceptionHandler")的"ExceptionHandler"和配置文件中的<logger name="ExceptionHandler">的name对应

    Step 5. 验收

    F5之后,你会在E:\log-file.txt里发现日志记录。

    注: <param name="File" value="E:\\log-file.txt" />使用来设置日志路径的。

     

     

     

  • 相关阅读:
    关于一道PHP面试题的解法
    ThinkPHP学习(二)
    ThinkPHP学习(一)
    Apache 创建虚拟主机目录和设置默认访问页面
    awk全集
    初识云计算&openstack
    Python collections
    Python 函数/高阶函数
    Python dic/set/迭代
    python matplotlib 图标绘制
  • 原文地址:https://www.cnblogs.com/matthew/p/1266836.html
Copyright © 2020-2023  润新知