一个web站点必须要记录日志,否则哪里出错了,完全是黑娃找黑妹,两眼一抹黑。

最常用的就是log4net日志组件。我们可以通过扩展加入日志组件。

第一步:在项目中NuGet log4net包,即 Install-Package log4net;

第二步:添加log4net.config配置文件到项目中;

第三步:在项目中新建一个LogExtension类,代码如下所示:

public static partial class LogExtension {
//配置文件,我将之放在站点根目录的Config文件夹中
private static string Log4netConfigureName => "Config/log4net.config"; //日志仓储的名称
private static string RepositoryName => "Log4NetLogRepository"; //全局使用一个日志仓储。
//注意:不允许定义多个同名的日志仓储。
public static ILoggerRepository Repository => LogManager.CreateRepository(RepositoryName); static LogExtension() {
//配置已经被实例化的日志仓储
XmlConfigurator.Configure(Repository, new FileInfo(Log4netConfigureName));
} /// <summary>
/// 获取ILog实例
/// </summary>
/// <param name="type"></param>
/// <returns></returns>
public static ILog GetLog(this Type type) {
if (type == null)
throw new ArgumentNullException();
//只要有了日志仓库,就可以得到一个ILog的实例。因此,在这之前必须实例化一个日志仓储
return LogManager.GetLogger(RepositoryName, type);
} /// <summary>
/// 获取ILog实例
/// </summary>
/// <typeparam name="TEntity"></typeparam>
/// <param name="entity"></param>
/// <returns></returns>
public static ILog GetLog<TEntity>(this TEntity entity) where TEntity : class {
//只要有了日志仓库,就可以得到一个ILog的实例。因此,在这之前必须实例化一个日志仓储
return LogManager.GetLogger(RepositoryName, typeof(TEntity));
}
}

第四步:使用方式见下图:

是不是很方便?简直不要太方便了!

.net core 使用log4net日志组件的更多相关文章

  1. asp.net core 集成 log4net 日志框架

    asp.net core 集成 log4net 日志框架 Intro 在 asp.net core 中有些日志我们可能想输出到数据库或文件或elasticsearch等,如果不自己去实现一个 Logg ...

  2. log4net日志组件经验分享

    引自log4net日志组件经验分享 我们在开发WEB项目的时候,经常会出现这样的情况:在本地调试都是正常的,但是部署到服务器上就不行了.一般出现这种情况很大一部分原因是因为服务的环境和本地不同,数据库 ...

  3. log4net日志组件

    转载:http://www.cnblogs.com/knowledgesea/archive/2012/04/26/2471414.html 一.什么是log4net组件 Log4net是基于.net ...

  4. .Net Core中的日志组件(Logging)

    1.介绍 Logging组件是微软实现的日志记录组件包括控制台(Console).调试(Debug).事件日志(EventLog)和TraceSource,但是没有实现最常用用的文件记录日志功能(可以 ...

  5. 快速入门系列--Log4net日志组件

    Log4net是阿帕奇基金会的非常流行的开源日志组件,是log4j的.NET移植版本,至今已经有11年的历史,使用方便并且非常稳定,此外很重要的一点是其和很多开源组件能很好的组合在一起工作,例如NHi ...

  6. 玩转ASP.NET Core中的日志组件

    简介 日志组件,作为程序员使用频率最高的组件,给程序员开发调试程序提供了必要的信息.ASP.NET Core中内置了一个通用日志接口ILogger,并实现了多种内置的日志提供器,例如 Console ...

  7. C#控制台程序使用Log4net日志组件

    1.Log4net一般都不陌生,但是在配置上不同类型的项目又不相同的地方比如C#控制台程序和C# MVCWeb项目,拿控制台项目为例   项目源码在文章底部 2.首先创建一个控制台程序,引入Log4n ...

  8. Log4net日志组件使用

    一.简介 几乎所有的大型应用都会有自己的用于跟踪调试的API.因为一旦程序被部署以后,就不太可能再利用专门的调试工具了.然而一个管理员可能需要有一套强大的日志系统来诊断和修复配置上的问题.经验表明,日 ...

  9. 使用log4net日志组件经验分享

    常见步骤: 第一:在项目中引用log4net组件. 第二:配置log4net,一般都写在web.config中. 第三:调用部分.       具体怎么配置,大家可以参考博客其它博友写的,这里我只写我 ...

随机推荐

  1. Python基础(一)常用函数

    1.map() 此函数可以,将列表内每一个元素进行操作,并返回列表 原型 map(function,[list]) def fc(x): return x * 2 print(map(fc,[1,2, ...

  2. pytorch预训练模型的下载地址以及解决下载速度慢的方法

    https://github.com/pytorch/vision/tree/master/torchvision/models 几乎所有的常用预训练模型都在这里面 总结下各种模型的下载地址: 1 R ...

  3. C# 获取 mp3文件信息【包括:文件大小、歌曲长度、歌手、专辑】

    C# 获取 mp3文件信息[包括:文件大小.歌曲长度.歌手.专辑] 第一种方式:[代码已验证] // http://bbs.csdn.net/topics/390392612   string fil ...

  4. C++对象赋值问题

  5. php .htaccess 伪静态

    # #以下是网站伪静态正则 # RewriteEngine On RewriteRule ^index.html$ index.php RewriteRule ^about.html$ about.p ...

  6. HTML基础教程

    <!DOCTYPE html><html> <head> <title></title> </head> <body> ...

  7. Spring 工具包

    Spring 工具包: spring-core-.RELEASE.jar!\org\springframework\util

  8. python 使用函数参数注解

    使用函数参数注解是一个很好的办法,它能提示程序员应该怎样正确使用这个函数. 函数注解只存储在函数的annotations 属性中

  9. 艾妮记账本Web开发(开发版)

    因为没有办法制作微信小程序版的艾妮记账本所以只能选择做Web开发版,但因为是花时间赶出来到的(但用了我已学的所有Web知识)所以就没有办法按老师的要求写七天的制作过程. 其实真正说起来我的这个Web开 ...

  10. git的基本用法

    作业要求来自https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2097 一:以下是git的基本使用方法: 1:首先先进行账号注册. 2:然 ...