日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

log4net在Asp.net MVC4中的使用過程

瀏覽:45日期:2022-06-14 15:00:03
目錄1、安裝log4net插件2、配置web.config文件3、初始化log4net4、定義異常攔截器5、后臺(tái)線程輪詢異常隊(duì)列,將日志寫入到文件6、控制器中定義異常測(cè)試方法7、啟動(dòng)程序測(cè)試action方法1、安裝log4net插件

新建Asp.net MVC4項(xiàng)目,并在Nuget控制臺(tái)輸入命令,或者直接搜索log4net在線安裝,安裝log4net

>Install-Package log4net -Version 2.0.15

2、配置web.config文件<?xml version='1.0' encoding='utf-8'?><!-- 有關(guān)如何配置 ASP.NET 應(yīng)用程序的詳細(xì)信息,請(qǐng)?jiān)L問 https://go.microsoft.com/fwlink/?LinkId=301880 --><configuration> <configSections> <section name='log4net' type='log4net.Config.Log4NetConfigurationSectionHandler,log4net'/> </configSections> <log4net> <root> <level value='ALL'></level> <appender-ref ref='SysAppender'></appender-ref> </root> <logger name='WebLogger'> <!--日志輸出級(jí)別限制,只有大于或等于DEBUG級(jí)別才記錄日志--> <level value='DEBUG'></level> </logger> <!--以滾動(dòng)日志方式記錄日志--> <appender name='SysAppender' type='log4net.Appender.RollingFileAppender,log4net'> <!--文件存放路徑,在項(xiàng)目根目錄App_Data下--> <param name='File' value='App_Data/'></param> <!--日志是否追加到文件--> <param name='AppendToFile' value='true'></param> <!--滾動(dòng)日志文件按照日期風(fēng)格生成--> <param name='RollingStyle' value='Date'></param> <!--日志文件的命名規(guī)則--> <param name='DatePattern' value='&quot;Logs_&quot;yyyyMMdd&quot;.txt&quot;'></param> <!--日志名稱是否靜態(tài)--> <param name='StaticLogFileName' value='false'></param> <!--日志內(nèi)容的格式和布局--> <layout type='log4net.Layout.PatternLayout,log4net'><param name='ConversionPattern' value='%d [%t] %-5p %c - %m%n'></param><param name='Header' value='-------------------------header---------------------------'></param><param name='Footer' value='-------------------------footer---------------------------'></param> </layout> </appender> <!--按照控制臺(tái)輸出日志--> <appender name='ConsoleApp' type='log4net.Appender.ConsoleAppender,log4net'> <layout type='log4net.Layout.PatternLayout,log4net'><param name='ConversionPattern' value='%d [%t] %-5p %c - %m%n'></param> </layout> </appender> </log4net> <appSettings> <add key='webpages:Version' value='3.0.0.0' /> <add key='webpages:Enabled' value='false' /> <add key='ClientValidationEnabled' value='true' /> <add key='UnobtrusiveJavaScriptEnabled' value='true' /> </appSettings> <system.web> <compilation debug='true' targetFramework='4.6.1' /> <httpRuntime targetFramework='4.6.1' /> <httpModules> <add name='ApplicationInsightsWebTracking' type='Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web' /> </httpModules> </system.web> <runtime> <assemblyBinding xmlns='urn:schemas-microsoft-com:asm.v1'> <dependentAssembly><assemblyIdentity name='Antlr3.Runtime' publicKeyToken='eb42632606e9261f' /><bindingRedirect oldVersion='0.0.0.0-3.5.0.2' newVersion='3.5.0.2' /> </dependentAssembly> <dependentAssembly><assemblyIdentity name='System.Diagnostics.DiagnosticSource' publicKeyToken='cc7b13ffcd2ddd51' /><bindingRedirect oldVersion='0.0.0.0-4.0.2.1' newVersion='4.0.2.1' /> </dependentAssembly> <dependentAssembly><assemblyIdentity name='Newtonsoft.Json' publicKeyToken='30ad4fe6b2a6aeed' /><bindingRedirect oldVersion='0.0.0.0-11.0.0.0' newVersion='11.0.0.0' /> </dependentAssembly> <dependentAssembly><assemblyIdentity name='System.Web.Optimization' publicKeyToken='31bf3856ad364e35' /><bindingRedirect oldVersion='1.0.0.0-1.1.0.0' newVersion='1.1.0.0' /> </dependentAssembly> <dependentAssembly><assemblyIdentity name='WebGrease' publicKeyToken='31bf3856ad364e35' /><bindingRedirect oldVersion='0.0.0.0-1.6.5135.21930' newVersion='1.6.5135.21930' /> </dependentAssembly> <dependentAssembly><assemblyIdentity name='System.Web.Helpers' publicKeyToken='31bf3856ad364e35' /><bindingRedirect oldVersion='1.0.0.0-3.0.0.0' newVersion='3.0.0.0' /> </dependentAssembly> <dependentAssembly><assemblyIdentity name='System.Web.WebPages' publicKeyToken='31bf3856ad364e35' /><bindingRedirect oldVersion='1.0.0.0-3.0.0.0' newVersion='3.0.0.0' /> </dependentAssembly> <dependentAssembly><assemblyIdentity name='System.Web.Mvc' publicKeyToken='31bf3856ad364e35' /><bindingRedirect oldVersion='1.0.0.0-5.2.4.0' newVersion='5.2.4.0' /> </dependentAssembly> </assemblyBinding> </runtime> <system.webServer> <modules> <remove name='TelemetryCorrelationHttpModule' /> <add name='TelemetryCorrelationHttpModule' type='Microsoft.AspNet.TelemetryCorrelation.TelemetryCorrelationHttpModule, Microsoft.AspNet.TelemetryCorrelation' preCondition='integratedMode,managedHandler' /> <remove name='ApplicationInsightsWebTracking' /> <add name='ApplicationInsightsWebTracking' type='Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web' preCondition='managedHandler' /> </modules> <validation validateIntegratedModeConfiguration='false' /> </system.webServer> <system.codedom> <compilers> <compiler language='c#;cs;csharp' extension='.cs' type='Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' warningLevel='4' compilerOptions='/langversion:default /nowarn:1659;1699;1701' /> <compiler language='vb;vbs;visualbasic;vbscript' extension='.vb' type='Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' warningLevel='4' compilerOptions='/langversion:default /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+' /> </compilers> </system.codedom></configuration>

日志級(jí)別分類(從高到低):OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL

3、初始化log4net

在Global.asax中初始化log4net配置

log4net.Config.XmlConfigurator.Configure();

4、定義異常攔截器

自定義異常攔截器,出現(xiàn)控制器action方法調(diào)用出現(xiàn)異常時(shí),將異常信息統(tǒng)一加入到全局隊(duì)列中,避免日志寫入文件并發(fā)沖突。

public class MyErrorAttribute:HandleErrorAttribute {public static Queue<Exception> ExceptionQueue = new Queue<Exception>();public override void OnException(ExceptionContext filterContext){ ExceptionQueue.Enqueue(filterContext.Exception); base.OnException(filterContext);} }

將全局默認(rèn)異常處理器替換為自己定義的。

public class FilterConfig {public static void RegisterGlobalFilters(GlobalFilterCollection filters){ //filters.Add(new HandleErrorAttribute());//默認(rèn)異常處理器 filters.Add(new MyErrorAttribute());//自定義異常處理器} }5、后臺(tái)線程輪詢異常隊(duì)列,將日志寫入到文件

啟動(dòng)類Global.asax.cs文件中定義后臺(tái)線程,處理異常隊(duì)列中日志的輸出

//啟動(dòng)后臺(tái)線程,周期性輪詢異常隊(duì)列,將異常輸出到文件 ThreadPool.QueueUserWorkItem(o => {while(true){ if(MyErrorAttribute.ExceptionQueue.Count>0) {Exception ex = MyErrorAttribute.ExceptionQueue.Dequeue();if(ex!=null){ ILog log = LogManager.GetLogger('testError'); log.Error(ex.ToString());}else{ Thread.Sleep(50);} } else {Thread.Sleep(50); }} });6、控制器中定義異常測(cè)試方法public ActionResult TestLog(){ int result = 0; int x = 1, y = 0; result = x / y; return View();}7、啟動(dòng)程序測(cè)試action方法

查看項(xiàng)目根目錄App_Data,生成了日志文件Logs_20230520.txt

查看日志內(nèi)容

到此這篇關(guān)于log4net在Asp.net MVC4中的使用的文章就介紹到這了,更多相關(guān)Asp.net MVC4使用log4net內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: ASP.NET
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
91精品国产调教在线观看| 久久午夜影视| 一区二区91| 日韩精品五月天| 国产精品久久| 日韩a一区二区| 一区二区三区视频免费观看| 亚洲一本视频| 免费看日韩精品| 日韩国产在线不卡视频| 国产精品国码视频| 精品一级视频| 欧美中文一区二区| 亚洲麻豆一区| 麻豆一区二区在线| 国产一区调教| 91成人精品| 婷婷精品在线| 国产成人免费av一区二区午夜| 精品亚洲美女网站| 亚洲人成高清| 日韩久久一区二区三区| 免费在线观看一区二区三区| 国产精品多人| 亚洲男女av一区二区| 久久国产精品亚洲77777| 亚洲日韩中文字幕一区| 精品午夜视频| 日av在线不卡| 国产suv精品一区| 在线观看一区| 亚洲国产福利| 欧美伊人久久| 国产精品美女久久久浪潮软件| 国产精品成人国产| 99香蕉国产精品偷在线观看| 麻豆91精品91久久久的内涵| 亚洲欧美日韩国产综合精品二区| 国产精品一区二区精品| 99热免费精品| 久久久成人网| 日韩精品视频网| 好看的av在线不卡观看| 91视频精品| 国产精品久久久久久久久久白浆| 黑丝一区二区三区| 日本久久成人网| 国产精品国产一区| 国产精品一区高清| 亚洲丝袜啪啪| 婷婷亚洲五月色综合| 欧美激情另类| 免费一级欧美片在线观看网站| 久久成人精品| 精品一区毛片| 久久亚洲在线| av资源新版天堂在线| 国产精品扒开腿做爽爽爽软件| 免费视频最近日韩| 国产一区日韩欧美| 影视先锋久久| 亚洲女人av| 石原莉奈在线亚洲二区| 亚洲一区国产一区| 视频一区二区三区中文字幕| 久久国产精品久久w女人spa| 久久精品一区二区不卡| 欧美日韩中文字幕一区二区三区| 日韩和的一区二在线| 在线一区免费| 一区二区国产在线观看| 国产日韩专区| 丝袜美腿成人在线| 亚州精品视频| 国产欧美日韩在线观看视频| 欧美aa在线视频| 精品福利久久久| 亚洲成人一区在线观看| 在线亚洲激情| 97久久中文字幕| 久久亚洲资源中文字| 精精国产xxxx视频在线野外| 欧美特黄一级| 国产精品白丝一区二区三区| 日韩在线高清| 亚州av日韩av| 国产精久久久| 久久精品国语| 日韩黄色在线观看| 国产伦久视频在线观看| 99日韩精品| 成人台湾亚洲精品一区二区| 国产农村妇女精品一区二区| 久久av日韩| 99国产精品久久久久久久 | 亚洲va久久久噜噜噜久久| 精品久久久网| 伊人国产精品| 日韩免费一区| 免费在线欧美视频| 日韩欧美1区| 欧美日韩午夜电影网| 欧美精品一二| 久久天堂影院| 日韩和欧美的一区| 夜久久久久久| 亚洲女同av| 嫩草伊人久久精品少妇av杨幂 | 91精品国产一区二区在线观看| 久久青草久久| 日韩av片子| 卡一精品卡二卡三网站乱码| 不卡av一区二区| 91日韩免费| 国内精品亚洲| 麻豆一区二区三| 国产探花一区| 国产日韩在线观看视频| 亚洲精品少妇| 亚洲最新av| 亚洲伊人精品酒店| 蜜桃91丨九色丨蝌蚪91桃色| 午夜av一区| 亚洲经典在线| 国产一区日韩一区| 999久久久国产精品| 夜鲁夜鲁夜鲁视频在线播放| 国产精品sm| 精品一区二区三区四区五区| 久久不见久久见免费视频7| 欧美另类中文字幕| 日韩高清一区| 国产精品久久久久久久免费软件| 国产精品亚洲一区二区在线观看| 69堂免费精品视频在线播放| 69堂精品视频在线播放| 国产精品美女久久久久久不卡 | 天堂√8在线中文| 亚洲电影有码| 亚洲婷婷在线| 欧美日韩国产在线观看网站| 红桃视频欧美| 亚洲精品婷婷| 精品视频自拍| 国产一区二区三区自拍| 青青国产精品| 日韩三区免费| 日韩激情中文字幕| 亚洲黄色免费av| 日本不卡视频一二三区| 激情综合五月| 日韩美女精品| 久久高清免费| 国产另类在线| 一区免费在线| 久久精品国产在热久久| 欧美国产一级| 综合国产视频| 久久不见久久见免费视频7| 91精品国产成人观看| 中文精品视频| 日本va欧美va精品发布| 久久超级碰碰| 一本一道久久a久久精品蜜桃| 欧美精品一二| 国产毛片久久久| av亚洲免费| 国产精品啊v在线| av高清不卡| 国产毛片一区| 欧美一区久久| 日本久久黄色| 欧美日韩精品免费观看视完整| 亚洲欧美高清| av在线最新| 亚洲欧洲日韩| 成人免费电影网址| 中文字幕亚洲影视| 电影亚洲精品噜噜在线观看| 久久国产精品99国产| 国产91欧美| 日韩一区二区三区在线看| 中文在线中文资源| 日韩av黄色在线| 国产视频一区在线观看一区免费| 久久99青青| 在线视频亚洲| 99成人在线视频| 久久一区精品| 国产精品毛片久久久| 亚洲尤物在线| 香蕉人人精品| 精品视频高潮| 日韩成人一级| 日韩综合小视频| 伊人久久一区| 日韩午夜电影| 久久影院一区| 欧美一区二区三区激情视频| 国产福利资源一区|