当前位置:编程学习 > C#/ASP.NET >>

Log4Net如何将日志按不同类型写入多个文件中,急~~~

如题:Log4Net如何将日志按不同类型写入多个文件中,急~~~
我建了3个日志文件

事务日志:log.txt
错误日志:log_error.txt  
操作日志:log_event.txt

web.config文件中的配置,不知道对不对.先用两个文件做例子

<log4net debug="false">
<appender name="LogFileAppender" type="log4net.Appender.FileAppender" >
<param name="File" value="Log\Log.txt" /> color=#FF0000] ******事务日志[/color]
<param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="LogFileAppender" type="log4net.Appender.FileAppender" >
<param name="File_error" value="Log\Log_error.txt" />****错误日志 <param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<root>
<level value="DEBUG" />
<appender-ref ref="LogFileAppender" />
      <appender-ref ref="LogFileAppender" />
</root>
</log4net>

页面操作调用代码,不知道这样写对吗?

 protected void btn_Visit_Click(object sender, EventArgs e)
    {
        ILog logger = LogManager.GetLogger("File");
        logger.Info("测试log4net配置!");

        ILog loggerEvent = LogManager.GetLogger("File_event");

        loggerEvent.Warn("用户操作了" + sender.ToString() + "操作");

           }


这样运行的结果是日志全部写到log.txt文件中了,不知道为什么,请高手指教! --------------------编程问答-------------------- 页面操作调用代码,代码粘错了,修改 

 protected void btn_Visit_Click(object sender, EventArgs e)
    {
        ILog logger = LogManager.GetLogger("File");
        logger.Info("测试log4net配置!");

        ILog loggerEvent = LogManager.GetLogger("File_error");

        loggerEvent.Warn("用户操作了" + sender.ToString() + "操作");

        log4net.Appender.EventLogAppender newlogger = new log4net.Appender.EventLogAppender();
    }
--------------------编程问答-------------------- ding --------------------编程问答-------------------- learn! --------------------编程问答-------------------- up --------------------编程问答-------------------- buo cuo henhaode daima --------------------编程问答-------------------- 自己解决了!发出来给大家看看

 <log4net>
    <root>
      <!--
            <level value="ALL" />
            <appender-ref ref="rootFile" />
            -->
    </root>
    <logger name="Livan's Logger">
      <level value="ALL" />
      <appender-ref ref="Loging" />
      <appender-ref ref="EventLoging"/>
      <appender-ref ref="ErrorLoging" />
    </logger>
    <!--信息日志-->
    <appender name="Loging" type="log4net.Appender.RollingFileAppender,log4net" >
      <param name="File" value="Log\log.txt" />
      <param name="AppendToFile" value="true" />
      <param name="RollingStyle" value="Date" />
      <param name="DatePattern" value="yyyyMMdd" />
      <param name="StaticLogFileName" value="true" />
      <layout type="log4net.Layout.PatternLayout,log4net">
        <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n"  />
        <param name="Header" value=" " />
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <param name="LevelMin" value="INFO" />
        <param name="LevelMax" value="INFO" />
      </filter>
    </appender>
    <!--警告,注意,通知日志-->
    <appender name="EventLoging" type="log4net.Appender.RollingFileAppender,log4net" >
      <param name="File" value="Log\log_event.txt" />
      <param name="AppendToFile" value="true" />
      <param name="RollingStyle" value="Date" />
      <param name="DatePattern" value="yyyyMMdd" />
      <param name="StaticLogFileName" value="true" />
      <layout type="log4net.Layout.PatternLayout,log4net">
        <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss}%newline%message%n" />
        <param name="Header" value=" [Header] " />
        <param name="Footer" value="[Footer] " />
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <param name="LevelMin" value="WARN" />
        <param name="LevelMax" value="WARN" />
      </filter>
    </appender>
    <!--错误日志-->
    <appender name="ErrorLoging" type="log4net.Appender.RollingFileAppender,log4net" >
      <param name="File" value="Log\log_error.txt" />
      <param name="AppendToFile" value="true" />
      <param name="RollingStyle" value="Date" />
      <param name="DatePattern" value="yyyyMMdd" />
      <param name="StaticLogFileName" value="true" />
      <layout type="log4net.Layout.PatternLayout,log4net">
        <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss}%newline%message%n" />
        <param name="Header" value=" [Header] " />
        <param name="Footer" value="[Footer] " />
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <param name="LevelMin" value="ERROR" />
        <param name="LevelMax" value="ERROR" />
      </filter>
    </appender>
  </log4net>


后台调用

log4net.ILog log = log4net.LogManager.GetLogger("Livan's Logger");
log.Info(message);
log.Warn(message);
...


程序会分别写入不同txt文件中 --------------------编程问答--------------------  挺一下 …… 今天借用了 …… --------------------编程问答--------------------
引用 6 楼  的回复:
自己解决了!发出来给大家看看

C# code


 <log4net>
    <root>
      <!--
            <level value="ALL" />
            <appender-ref ref="rootFile" />
            -->
    </root>
    <logger name="Livan……



这里面怎么写message --------------------编程问答-------------------- mark
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,