zoukankan      html  css  js  c++  java
  • C#:MVC引用Log4Net生成错误日志

    第一步:引用log4net配置文件

    第二步:在自己项目下新建文件夹LogNet,再在里面建立类Log.cs

    log.cs内容如下:

     1     public class Log
     2     {
     3         public static void WriteFatal(Exception ex)
     4         {
     5             log4net.ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
     6             log.Fatal("严重错误", ex);
     7         }
     8 
     9         /// <summary>
    10         /// 输出异常信息
    11         /// </summary>
    12         /// <param name="t"></param>
    13         /// <param name="e"></param>
    14         public static void WriteLog(Type t, Exception e)
    15         {
    16             log4net.ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
    17             log.Error("Error", e);
    18         }
    19 
    20         /// <summary>
    21         /// 输出普通错误信息
    22         /// </summary>
    23         /// <param name="ex"></param>
    24         public static void WriteLog(Exception ex)
    25         {
    26             log4net.ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
    27             log.Error("Error", ex);
    28         }
    29 
    30         /// <summary>
    31         /// 输出DEBUG信息
    32         /// </summary>
    33         /// <param name="text"></param>
    34         public static void WriteDebug(object text)
    35         {
    36             log4net.ILog log = log4net.LogManager.GetLogger("Debug信息");
    37             log.Debug(text);
    38         }
    39 
    40         /// <summary>
    41         /// 输出程序运行信息
    42         /// </summary>
    43         /// <param name="text"></param>
    44         public static void WriteInfo(string text)
    45         {
    46             ILog log = LogManager.GetLogger("程序运行信息");
    47             log.Info(text);
    48         }
    49     }

    第三步:在自己项目下新建Log4Net.config

    Log4Net.config内容如下:

     1 <?xml version="1.0"?>
     2 <configuration>
     3   <configSections>
     4     <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
     5   </configSections>
     6   <log4net>
     7     <!--定义输出到文件中-->
     8     <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
     9       <!--定义文件存放位置-->
    10       <file value="log\\"/>
    11       <appendToFile value="true"/>
    12       <rollingStyle value="Date"/>
    13       <datePattern value="yyyy-MM-dd'.txt'"/>
    14       <staticLogFileName value="false"/>
    15       <MaxSizeRollBackups value="100"/>
    16       <layout type="log4net.Layout.PatternLayout">
    17         <!--每条日志末尾的文字说明-->
    18         <!--输出格式-->
    19         <!--样例:2008-03-26 13:42:32,111 [10] INFO  Log4NetDemo.MainClass [(null)] - info-->
    20         <conversionPattern value="%newline %n记录时间:%date %n线程ID:[%thread] %n日志级别:  %-5level %n出错类:%logger property: [%property{NDC}] - %n错误描述:%message%newline %n"/>
    21       </layout>
    22     </appender>
    23     <root>
    24       <level value="ERROR"/>
    25       <level value="DEBUG"/>
    26       <level value="INFO"/>
    27       <!--文件形式记录日志-->
    28       <appender-ref ref="RollingLogFileAppender"/>
    29     </root>
    30   </log4net>
    31   <startup>
    32     <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
    33   </startup>
    34 </configuration>

    第四步:在项目中搜索Global.asax.cs中加载log4net配置文件

     

    第五步:也是比较重要的一步,就是在AssemblyInfo.cs中注册这个Log4Net.config,不然是不会自动生成text文件的。

    第六步:然后就可以在控制器函数里面去引用Log。

    这一行是写在try...catch...中的catch中的,一般有异常信息都是可以运用这一段代码的。

    这一行是我这边需求需要不停监控程序的运行情况,所以加了这行不停输出程序运行信息。

    以上是我的分享,欢迎转载!

  • 相关阅读:
    WebClient 非阻塞客户端 RestTemplate 阻塞式客户端
    微服务网关---调用其他微服务
    复习下comparable和comparator以及比较
    关于InitializingBean的用法、应用
    Scheduled(cron = "")
    windows查看进程方法(老是忘只能写了)
    vue 控件component
    vue 过滤器的使用实例
    vue基础
    日志脱敏工具
  • 原文地址:https://www.cnblogs.com/W--Jing/p/8125652.html
Copyright © 2011-2022 走看看