分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

LogNet4

发布时间:2023-09-06 01:21责任编辑:林大明关键词:暂无标签

ASP.Net MVC 项目中添加LogNet4

1,创建ASP.NET MVC项目

2,NuGet或者直接下载log4net.dll 并安装

3 在配置文件 web.config 加入 如下代码

<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>

  

4 在配置文件 web.config 加入lognet4的配置文件

<log4net debug="true"> ???<appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender"> ?????<filter type="log4net.Filter.LevelMatchFilter"> ???????<levelToMatch value="ERROR"/> ?????</filter> ?????<filter type="log4net.Filter.DenyAllFilter"/> ?????<!--日志文件名开头--> ?????<param name="File" value="Logs\Error\"/> ?????<!--是否追加到文件--> ?????<param name="AppendToFile" value="true"/> ?????<!--记录日志写入文件时,不锁定文本文件--> ?????<lockingModel type="log4net.Appender.FileAppender+ExclusiveLock"/> ?????<!--Unicode编码--> ?????<Encoding value="UTF-8"/> ?????<!--最多产生的日志文件数,value="-1"为不限文件数--> ?????<param name="MaxSizeRollBackups" value="10"/> ?????<!--是否只写到一个文件中--> ?????<param name="StaticLogFileName" value="false"/> ?????<!--按照何种方式产生多个日志文件(日期[Date],文件大小[Size],混合[Composite])--> ?????<param name="RollingStyle" value="Date"/> ?????<!--按日期产生文件夹,文件名[在日期方式与混合方式下使用]--> ?????<param name="DatePattern" value="yyyy-MM-dd".log""/> ?????<!--每个文件的大小。只在混合方式与文件大小方式下使用,超出大小的在文件名后自动增加1重新命名--> ?????<param name="maximumFileSize" value="5000KB" /> ?????<!--记录的格式。--> ????<layout type="log4net.Layout.PatternLayout"> ???????<!--<header value="[BEGIN LOGGING AT %date]%newline" type="log4net.Util.PatternString" /> ???????<footer value="[END LOGGING AT %date]%newline%newline" type="log4net.Util.PatternString" />--> ???????<ConversionPattern value="%d [%t] %-5p %c : %m%n" /> ?????</layout> ???</appender> ???<appender name="InfoAppender" type="log4net.Appender.RollingFileAppender"> ?????<filter type="log4net.Filter.LevelMatchFilter"> ???????<levelToMatch value="INFO"/> ?????</filter> ?????<filter type="log4net.Filter.DenyAllFilter"/> ?????<!--日志文件名开头--> ?????<param name="File" value="Logs\Info\"/> ?????<!--是否追加到文件--> ?????<param name="AppendToFile" value="true"/> ?????<!--记录日志写入文件时,不锁定文本文件--> ?????<lockingModel type="log4net.Appender.FileAppender+ExclusiveLock"/> ?????<!--Unicode编码--> ?????<Encoding value="UTF-8"/> ?????<!--最多产生的日志文件数,value="-1"为不限文件数--> ?????<param name="MaxSizeRollBackups" value="10"/> ?????<!--是否只写到一个文件中--> ?????<param name="StaticLogFileName" value="false"/> ?????<!--按照何种方式产生多个日志文件(日期[Date],文件大小[Size],混合[Composite])--> ?????<param name="RollingStyle" value="Date"/> ?????<!--按日期产生文件夹,文件名[在日期方式与混合方式下使用]--> ?????<param name="DatePattern" value="yyyy-MM-dd".log""/> ?????<!--每个文件的大小。只在混合方式与文件大小方式下使用,超出大小的在文件名后自动增加1重新命名--> ?????<param name="maximumFileSize" value="5000KB" /> ?????<!--记录的格式。--> ?????<layout type="log4net.Layout.PatternLayout"> ???????<!--<header value="[BEGIN LOGGING AT %date]%newline" type="log4net.Util.PatternString" /> ???????<footer value="[END LOGGING AT %date]%newline%newline" type="log4net.Util.PatternString" />--> ???????<ConversionPattern value="%d [%t] %-5p %c :%m%n" /> ?????</layout> ???</appender> ???<root> ?????<level value="All"/> ?????<appender-ref ref="ErrorAppender"/> ?????<appender-ref ref="InfoAppender"/> ???</root> ?</log4net>

  

5 在Properties下找到AssemblyInfo.cs 加入代码如下

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

  

7在Global.asax 加入代码如下:

string l4net = Server.MapPath("~/Web.config"); ????????log4net.Config.XmlConfigurator.ConfigureAndWatch(new System.IO.FileInfo(l4net));

  

 

 8 添加辅助类(引入命名空间 log4net;log4net.Config;System.IO

 public static class AppLog ???{ ???????private static ILog log; ???????static AppLog() ???????{ ???????????XmlConfigurator.ConfigureAndWatch(new FileInfo(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile)); ???????????log = LogManager.GetLogger(typeof(AppLog)); ???????} ???????public static void Debug(object message) ???????{ ???????????log.Debug(message); ???????} ???????public static void DebugFormatted(string format, params object[] args) ???????{ ???????????log.DebugFormat(format, args); ???????} ???????public static void Info(object message) ???????{ ???????????log.Info(message); ???????} ???????public static void InfoFormatted(string format, params object[] args) ???????{ ???????????log.InfoFormat(format, args); ???????} ???????public static void Warn(object message) ???????{ ???????????log.Warn(message); ???????} ???????public static void Warn(object message, Exception exception) ???????{ ???????????log.Warn(message, exception); ???????} ???????public static void WarnFormatted(string format, params object[] args) ???????{ ???????????log.WarnFormat(format, args); ???????} ???????public static void Error(object message) ???????{ ???????????log.Error(message); ???????} ???????public static void Error(object message, Exception exception) ???????{ ???????????log.Error(message, exception); ???????} ???????public static void ErrorFormatted(string format, params object[] args) ???????{ ???????????log.ErrorFormat(format, args); ???????} ???????public static void Fatal(object message) ???????{ ???????????log.Fatal(message); ???????} ???????public static void Fatal(object message, Exception exception) ???????{ ???????????log.Fatal(message, exception); ???????} ???????public static void FatalFormatted(string format, params object[] args) ???????{ ???????????log.FatalFormat(format, args); ???????} ???}

  

 9 使用

10 效果

实例链接:http://download.csdn.net/download/w76161501/10046892

LogNet4

原文地址:http://www.cnblogs.com/wangboke/p/7762032.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved