C#:MVC引用Log4Net生成错误日志

时间:2024-12-29 11:35:14

第一步:引用log4net配置文件

C#:MVC引用Log4Net生成错误日志

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

C#:MVC引用Log4Net生成错误日志

log.cs内容如下:

     public class Log
{
public static void WriteFatal(Exception ex)
{
log4net.ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
log.Fatal("严重错误", ex);
} /// <summary>
/// 输出异常信息
/// </summary>
/// <param name="t"></param>
/// <param name="e"></param>
public static void WriteLog(Type t, Exception e)
{
log4net.ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
log.Error("Error", e);
} /// <summary>
/// 输出普通错误信息
/// </summary>
/// <param name="ex"></param>
public static void WriteLog(Exception ex)
{
log4net.ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
log.Error("Error", ex);
} /// <summary>
/// 输出DEBUG信息
/// </summary>
/// <param name="text"></param>
public static void WriteDebug(object text)
{
log4net.ILog log = log4net.LogManager.GetLogger("Debug信息");
log.Debug(text);
} /// <summary>
/// 输出程序运行信息
/// </summary>
/// <param name="text"></param>
public static void WriteInfo(string text)
{
ILog log = LogManager.GetLogger("程序运行信息");
log.Info(text);
}
}

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

Log4Net.config内容如下:

 <?xml version="1.0"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<!--定义输出到文件中-->
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<!--定义文件存放位置-->
<file value="log\\"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="yyyy-MM-dd'.txt'"/>
<staticLogFileName value="false"/>
<MaxSizeRollBackups value=""/>
<layout type="log4net.Layout.PatternLayout">
<!--每条日志末尾的文字说明-->
<!--输出格式-->
<!--样例:-- ::, [] INFO Log4NetDemo.MainClass [(null)] - info-->
<conversionPattern value="%newline %n记录时间:%date %n线程ID:[%thread] %n日志级别: %-5level %n出错类:%logger property: [%property{NDC}] - %n错误描述:%message%newline %n"/>
</layout>
</appender>
<root>
<level value="ERROR"/>
<level value="DEBUG"/>
<level value="INFO"/>
<!--文件形式记录日志-->
<appender-ref ref="RollingLogFileAppender"/>
</root>
</log4net>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
</configuration>

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

C#:MVC引用Log4Net生成错误日志

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

C#:MVC引用Log4Net生成错误日志

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

C#:MVC引用Log4Net生成错误日志这一行是写在try...catch...中的catch中的,一般有异常信息都是可以运用这一段代码的。

C#:MVC引用Log4Net生成错误日志这一行是我这边需求需要不停监控程序的运行情况,所以加了这行不停输出程序运行信息。

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