- 需求说明:

  • 我们在编写代码的过程当中不可避免的需要记录程序的运行日志。通过查看日志可以快速的定位我们程序运行过程当中出现的问题并及时处理解决。
  • 所以在vs中我们可以方便的直接引用现成的日志记录包——log4.net来帮助我们记录日志,避免每次写程序还要自己完全重新编写记录日志模块的代码。提高开发效率。
    引入log4.net包说明:
  • 在VS导航栏中找到个 工具->NuGet 包管理器->管理解决方案的NuGet 程序包
  • 在搜索框内输入log4.net然后 选中图上的第一个。再到左边的选择上你要安装到的项目中。(这里提示一下:我是在客户端的开发中一开始只将log4.net安装到了单独的日志项目里面,然后我启动程序之后在记录日志的时候会报异常说找不到文件。但是文件就在程序路径下面,很奇怪。然后我就将log4.net也安装到了启动项目中。然后启动就不会报错。有知道这个原因的帮忙留言下。)
  • 安装好log4.net包之后。这时候还不能马上使用。我们还需要增加一个log4.net 的配置文件。配置文件可以网上百度一个。命名为log4net.config

8.最后也是很关键一步 就是在程序集中添加配置文件路径。
[assembly: log4net.Config.XmlConfigurator(ConfigFile = “Configs/log4net.config”, ConfigFileExtension = “config”, Watch = true)]

ConfigFile = "Configs/log4net.config"是我将配置文件集中放在了程序根目录下面的一个Configs文件夹里面。

netframework 日志系统台 .net怎么记录日志_配置文件


9.然后我们就可以使用一个工具类进行日志记录使用了。内容可以根据自己的需要进行编辑。

public class LogHelper
    {
        public static readonly log4net.ILog logInfo = log4net.LogManager.GetLogger("InfoLog");

        public static readonly log4net.ILog logError = log4net.LogManager.GetLogger("Error");
        /// <summary>
        /// 普通日志
        /// </summary>
        /// <param name="message">日志内容</param>
        public static void Info(string message)
        {
            if (logInfo.IsInfoEnabled)
            {
                logInfo.Info(message);
            }
        }

        public static void Info(string url,string reqinfo, string resinfo)
        {
            if (logInfo.IsInfoEnabled)
            {
                string LogInfo = $"发送图片URL:{url} REQUEST:{reqinfo} RESPONSE:{resinfo}";

                logInfo.Info(LogInfo);
            }
        }
        /// <summary>
        /// 错误日志
        /// </summary>
        /// <param name="message">错误日志</param>
        public static void Error(string info, Exception ex)
        {
            if (logError.IsErrorEnabled)
            {
                logError.Error(info, ex);
            }
        }
    }

10.差点忘了。。。使用前还要进行一次配置文件加载初始化。在程序启动的时候加上://加载配置文件 log4net.Config.XmlConfigurator.Configure();