log4net的使用步骤
Log4net是一个基于.NET平台的开源日志记录组件,它可以帮助开发人员在应用程序中添加日志记录功能,支持多种日志级别,如DEBUG、INFO、WARN、ERROR等,这使得开发人员可以根据需要灵活地控制日志的输出。下面是log4net使用步骤:
- 步骤一:安装log4net
打开vs,在项目>管理NuGet程序管理包 安装lognet;
- 步骤二:创建log4net.config
可以手动复制一个App.config文件,然后改名为log4net.config,然后至项目里面,属性配置为“始终复制”;
- 步骤三:配置log4net.config
打开 log4net.config 文件, 根据需求修改以下内容:
<?xml version="1.0" encoding="utf-8"?>
<log4net>
<!-- 控制台日志配置 -->
<appender name="Console" type="log4net.Appender.ConsoleAppender">
<!-- 日志输出格式 -->
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
</layout>
</appender>
<!-- 文件存储日志配置 -->
<appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
<!-- 保存文件的名称 -->
<file value="D:\log" />
<appendToFile value="true"/>
<rollingStyle value="Date"/>
<datePattern value="\\yyyyMM\\yyyyMMdd'.log'"/>
<staticLogFileName value="false"/>
<!-- 文件的编码方式 -->
<param name="Encoding" value="UTF-8"/>
<!-- 每个文件的大小 -->
<maximumFileSize value="100KB" />
<!-- 保存文件数量 -->
<maxSizeRollBackups value="2" />
<!-- 日志输出格式 -->
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%t] %-5level %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="Console" />
<appender-ref ref="RollingFile" />
</root>
</log4net>
- 步骤四:配置 AssemblyInfo.cs
在文件的末尾添加log4net
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有关程序集的一般信息由以下
// 控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("Log4TestDemo")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Log4TestDemo")]
[assembly: AssemblyCopyright("Copyright © 2024")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 会使此程序集中的类型
//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
//请将此类型的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("302534bb-7e86-4d63-b8b5-875e4f733d5c")]
// 程序集的版本信息由下列四个值组成:
//
// 主版本
// 次版本
// 生成号
// 修订号
//
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
// 指定log4net 的配置文件
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]
- 步骤五:测试
public Form1()
{
InitializeComponent();
}
private static ILog log = LogManager.GetLogger("Test");
private void button1_Click(object sender, EventArgs e)
{
log.Error("错误", new Exception("发生了一个异常"));//错误
log.Fatal("严重错误", new Exception("发生了一个致命错误"));//严重错误
log.Info("信息"); //记录一般信息
log.Debug("调试信息");//记录调试信息
log.Warn("警告");//记录警告信息
}
- 结果