zoukankan      html  css  js  c++  java
  • log4net快速上手

    园子里有一篇 Log4Net使用指南 写得很详细,推荐给准备使用log4net的同学看看。

    如果你不想花太多时间研究,也可以按下面的步骤在5分钟内搞定:

    1、添加对log4net.dll的引用

    2、修改配置文件,以app.config为例,参考内容如下:

    <?xml version="1.0" encoding="utf-8" ?>
    
    <configuration>
    
    	<configSections>
    		<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
    	</configSections>
    	<log4net>
    		<logger name="jimmy.logger">
    			<!--ALL->DEBUG->INFO->WARN->ERROR->FATAL->OFF 级别依次增加,
    			即:如果设置为INFO,则DEBUG类型的日志将不被记录;
    			如果设置为ERROR,则仅ERROR/FATAL二种级别的日志将被记录-->
    			<level value="WARN"/>
    			<appender-ref ref="RollingLogFileAppender"/>
    		</logger>
    		<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
    			<!--是否追加到文件-->
    			<param name="AppendToFile" value="true" />
    			<!--日志文件最大10M-->
    			<param name="MaxSizeRollBackups" value="10" />
    			<param name="StaticLogFileName" value="false" />
    			<!--日志文件名前缀-->
    			<param name="File" value="log\\" />
    			<!--日志文件名按日期生成-->
    			<param name="RollingStyle" value="Date" />
    			<!--日志文件名的生成格式:yyyyMMdd.txt-->
    			<param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" />
    			
    			<!--日志记录的格式-->
    			<layout type="log4net.Layout.PatternLayout">
    				<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
    			</layout>
    		</appender>
    	</log4net>
    </configuration>
    
    3、示例代码
    using System;
    using log4net;
    
    
    namespace console_demo
    {
        class Program
        {      
    
            static void Main(string[] args)
            {
                log4net.Config.XmlConfigurator.Configure();
                ILog log = LogManager.GetLogger("jimmy.logger"); //这里的名字,要跟config中 logger name中对应          
    
                Console.WriteLine("log4net started...");
                Console.WriteLine("IsInfoEnabled={0}\nIsDebugEnabled={1}\nIsWarnEnabled={2}\nIsErrorEnabled={3}\nIsFatalEnabled={4}", log.IsInfoEnabled, log.IsDebugEnabled, log.IsWarnEnabled, log.IsErrorEnabled,log.IsFatalEnabled);
    
                if (log.IsInfoEnabled)
                {
                    log.Info("info test");
                }
    
                if (log.IsDebugEnabled) 
                {
                    log.Debug("Debug test");
                }
    
                if (log.IsWarnEnabled)
                {
                    log.Warn("Warn test");
                }
    
                if (log.IsErrorEnabled)
                {
                    log.Error("Error test");
                }
    
                if (log.IsFatalEnabled)
                {
                    log.Fatal("Fatal test");
                }
    
                Console.ReadKey();
            }
        }
    }
    
    运行后,将在程序同级目录下,自动创建log目录,并生成类似20110417.txt的日志文件,内容类似下面这样:
    2011-04-17 20:41:25,347 [6948] WARN  jimmy.logger [(null)] - Warn test
    2011-04-17 20:41:25,463 [6948] ERROR jimmy.logger [(null)] - Error test
    2011-04-17 20:41:25,465 [6948] FATAL jimmy.logger [(null)] - Fatal test
    注:因为config的log4net节点配置了日志级别为WARN,所以低于WARN级别的DEBUG,INFO信息并没有记录在日志中。
    作者:菩提树下的杨过
    出处:http://yjmyzz.cnblogs.com
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    luogu P1455 搭配购买
    浅谈筛素数
    luogu P1205 方块转换
    luogu P2241 统计方形
    luogu P1866 编号
    luogu P1042 乒乓球
    4.7清明考试(完蛋)
    LINUX 启动图形界面和查看运行级别
    密钥登录LINUX步骤
    服务命令只支持基本的LSB操作(启动、停止、重新启动、尝试重启、重新加载、强制重新加载、状态)。对于其他操作,请尝试使用systemctl。
  • 原文地址:https://www.cnblogs.com/yjmyzz/p/2019100.html
Copyright © 2011-2022 走看看