首页 > 代码库 > Log4net配置

Log4net配置

<?xml version="1.0" encoding="utf-8" ?><log4net>    <appender name="TastInfo" type="log4net.Appender.RollingFileAppender">        <file value="Log\\Info\\" />        <appendToFile value="true" />        <rollingStyle value="Composite" />        <maxSizeRollBackups value="-1" />        <maximumFileSize value="1MB" />        <staticLogFileName value="false" />        <DatePattern value="yyyy-MM-dd&quot;.txt&quot;"/>        <layout type="log4net.Layout.PatternLayout">            <conversionPattern value="%date  %-5level  - %message%newline" />        </layout>    </appender>    <appender name="TastError" type="log4net.Appender.RollingFileAppender">        <file value="log\\Error\\" />        <appendToFile value="true" />        <rollingStyle value="Composite" />        <maxSizeRollBackups value="-1" />        <maximumFileSize value="1MB" />        <staticLogFileName value="false" />        <DatePattern value="yyyy-MM-dd&quot;.txt&quot;"/>        <layout type="log4net.Layout.PatternLayout">            <conversionPattern value="%date  %-5level - %message%newline" />        </layout>    </appender>    <appender name="TastDebug" type="log4net.Appender.RollingFileAppender">        <file value="log\\Debug\\" />        <appendToFile value="true" />        <rollingStyle value="Composite" />        <maxSizeRollBackups value="-1" />        <maximumFileSize value="1MB" />        <staticLogFileName value="false" />        <DatePattern value="yyyy-MM-dd&quot;.txt&quot;"/>        <layout type="log4net.Layout.PatternLayout">            <conversionPattern value="%date  %-5level - %message%newline" />        </layout>    </appender>    <logger name="Info">        <level value="ALL"/>        <appender-ref ref="Info" />        <appender-ref ref="TastInfo" />    </logger>    <logger name="Error">        <level value="ALL"/>        <appender-ref ref="Error" />        <appender-ref ref="TastError" />    </logger>    <logger name="Debug">        <level value="ALL"/>        <appender-ref ref="Debug" />        <appender-ref ref="TastDebug" />    </logger></log4net>
public class Log    {        private const string SError = "Error";        private const string SDebug = "Debug";        private const string DefaultName = "Info";        static Log()        {            var path = AppDomain.CurrentDomain.BaseDirectory + @"\log4net_config.xml";            log4net.Config.XmlConfigurator.Configure(new FileInfo(path));        }        public static log4net.ILog GetLog(string logName)        {            var log = log4net.LogManager.GetLogger(logName);            return log;        }        public static void Debug(string message)        {            var log = log4net.LogManager.GetLogger(SDebug);            if (log.IsDebugEnabled)                log.Debug(message);        }        public static void Debug(string message, Exception ex)        {            var log = log4net.LogManager.GetLogger(SDebug);            if (log.IsDebugEnabled)                log.Debug(message, ex);        }        public static void Error(string message)        {            var log = log4net.LogManager.GetLogger(SError);            if (log.IsErrorEnabled)                log.Error(message);        }        public static void Error(string message, Exception ex)        {            var log = log4net.LogManager.GetLogger(SError);            if (log.IsErrorEnabled)                log.Error(message, ex);        }        public static void Fatal(string message)        {            var log = log4net.LogManager.GetLogger(DefaultName);            if (log.IsFatalEnabled)                log.Fatal(message);        }        public static void Info(string message)        {            log4net.ILog log = log4net.LogManager.GetLogger(DefaultName);            if (log.IsInfoEnabled)                log.Info(message);        }        public static void Warn(string message)        {            var log = log4net.LogManager.GetLogger(DefaultName);            if (log.IsWarnEnabled)                log.Warn(message);        }     }

不输出日志的原因是因为, 默认private static string DefaultName = "log",在配置文件里面找不到对应的节点值。

总结:log4net.LogManager.GetLogger(Name),这里面的Name要在配置文件中,有对应的节点值。

还有就是,假如在web.config里指定了一下信息:
<!--日志配置文件路径-->
<add key="log4net" value="http://config//log4net_local.config" />

则务必将在根目录下创建文件夹“config”,并将配置文件log4net_local.config放入config文件夹,这样才确保输出日志文件夹Log。

转载地址:http://www.cnblogs.com/chendaoyin/archive/2013/04/17/3026717.html