数码控科技猎奇Iphone动漫星座游戏电竞lolcosplay王者荣耀攻略allcnewsBLOGNEWSBLOGASKBLOGBLOGZSK全部技术问答问答技术问答it问答代码软件新闻开发博客电脑/网络手机/数码笔记本电脑互联网操作系统软件硬件编程开发360产品资源分享电脑知识文档中心IT全部全部分类全部分类技术牛文全部分类教程最新网页制作cms教程平面设计媒体动画操作系统网站运营网络安全服务器教程数据库工具网络安全软件教学vbscript正则表达式javascript批处理更多»编程更新教程更新游戏更新allitnewsJava新闻网络医疗信息化安全创业站长电商科技访谈域名会议专栏创业动态融资创投创业学院 / 产品经理创业公司人物访谈营销开发数据库服务器系统虚拟化云计算嵌入式移动开发作业作业1常见软件all电脑网络手机数码生活游戏体育运动明星影音休闲爱好文化艺术社会民生教育科学医疗健康金融管理情感社交地区其他电脑互联网软件硬件编程开发360相关产品手机平板其他电子产品摄影器材360硬件通讯智能设备购物时尚生活常识美容塑身服装服饰出行旅游交通汽车购房置业家居装修美食烹饪单机电脑游戏网页游戏电视游戏桌游棋牌游戏手机游戏小游戏掌机游戏客户端游戏集体游戏其他游戏体育赛事篮球足球其他运动球类运动赛车健身运动运动用品影视娱乐人物音乐动漫摄影摄像收藏宠物幽默搞笑起名花鸟鱼虫茶艺彩票星座占卜书画美术舞蹈小说图书器乐声乐小品相声戏剧戏曲手工艺品历史话题时事政治就业职场军事国防节日风俗法律法规宗教礼仪礼节自然灾害360维权社会人物升学入学人文社科外语资格考试公务员留学出国家庭教育学习方法语文物理生物工程学农业数学化学健康知识心理健康孕育早教内科外科妇产科儿科皮肤科五官科男科整形中医药品传染科其他疾病医院两性肿瘤科创业投资企业管理财务税务银行股票金融理财基金债券保险贸易商务文书国民经济爱情婚姻家庭烦恼北京上海重庆天津黑龙江吉林辽宁河北内蒙古山西陕西宁夏甘肃青海新疆西藏四川贵州云南河南湖北湖南山东江苏浙江安徽江西福建广东广西海南香港澳门台湾海外地区

JWT+Log4net配置与使用详解

来源:脚本之家  责任编辑:小易  

Log4net的优点

log4net是.Net下一个非常优秀的开源日志记录组件。log4net记录日志的功能非常强大。它可以将日志分不同的等级,以不同的格式,输出到不同的媒介。程序运行过程中就能生成并输出日志信息而无需人工干预,可供开发人员尽快找到应用程序中的Bug。另外,日志信息可以输出到不同的地方。

Log4net的结构

log4net 有四种主要的组件,分别是Logger(记录器), Repository(库), Appender(附着器)以及Layout(布局)

重点---网上教程项目中添加log4日志流程如下

1.项目中都会有一个工具类库,然后添加对log4net.dll的引用,再该类库下封装一个Log4Help.cs帮助类

2.在MVC,API项目中再次添加对log4net.dll的引用,在根目录的Global.asax.cs中的Application_Start方法中添加:

log4net.Config.XmlConfigurator.Configure();

3.添加Log4Net.config配置文件

讲解错误请多理解:

第二部操作是可以忽略掉的,项目一直都是提倡封装解耦,既然已经将log4封装到帮助类库中,是为了其它BLL层和DAL层能够使用,但是MVC和API层又再一次重复引用log4类库,作用也只是为了读取配置Log4Net.config配置文件,那么完全可以把配置文件读取写入到第一步中

[assembly: XmlConfigurator(ConfigFile = "Config/Log4Net.config", Watch = true)] //重点是这句话,读取MVC或者APILog4Net.config配置文件
namespace JWT.Common
{
 public class Log4Help
 {
  private static readonly ILog loginfo = LogManager.GetLogger("loginfo");

  private static readonly ILog logerror = LogManager.GetLogger("logerror");

  /// <summary>
  /// 打印日志信息
  /// </summary>
  /// <param name="info"></param>
  public static void Info(string info)
  {
   loginfo.Info(info);
  }

  /// <summary>
  /// 错误日志信息
  /// </summary>
  /// <param name="info"></param>
  /// <param name="ex"></param>
  public static void Error(string info, Exception ex)
  {
   logerror.Error(info, ex);
  }
 }
}

Log4Net.config配置文件,我是放在MVC这个文件目录下

如果去掉Config文件夹目录,直接将Log4Net.config放在项目根目录,读取路径配置如下

[assembly: XmlConfigurator(ConfigFile = "Log4Net.config", Watch = true)]

个人都是将数据库链接字符串database.config和在线配置appSettings单独用两个文件拆分维护,全放在web.config,参数配置和链接字符串太多,容易眼花也不太好找

Log4net配置

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
 <configSections>
 <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
 </configSections>
 <log4net>
 //logerror这个名字是在帮助类中使用的
 <logger name="logerror">
  <level value="ALL" />
  <appender-ref ref="ErrorAppender" /> //ErrorAppender如下1.1
 </logger>
 <logger name="loginfo">
  <level value="ALL" />
  <appender-ref ref="InfoAppender" />
 </logger>
 
 //对应1.1名字必须一样
 <appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">
  //File用于保存路径 
  <param name="File" value="Log\\LogError\\" />
  <param name="AppendToFile" value="true" />
  <param name="MaxSizeRollBackups" value="100" />
  <param name="MaxFileSize" value="10240" />
  <param name="StaticLogFileName" value="false" />
  <param name="DatePattern" value="yyyyMMdd'.txt'" />
  <param name="RollingStyle" value="Date" />
  <layout type="log4net.Layout.PatternLayout">
  <param name="ConversionPattern" value="%d [%t] [%-5level] : %message %newline" />
  </layout>
 </appender>

 <appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">
  <param name="File" value="Log\\LogInfo\\" />
  <param name="AppendToFile" value="true" />
  <param name="MaxFileSize" value="10240" />
  <param name="MaxSizeRollBackups" value="100" />
  <param name="StaticLogFileName" value="false" />
  <param name="DatePattern" value="yyyyMMdd'.txt'" />
  <param name="RollingStyle" value="Date" />
  <layout type="log4net.Layout.PatternLayout">
  <param name="ConversionPattern" value="%d [%t] [%-5level] : %message %newline" />
  </layout>
 </appender>
 </log4net>
</configuration>
 public class HomeController : Controller
 {
  public ActionResult Index()
  {
   Log4Help.Info("1111");
   Log4Help.Error("12345",null);
   return View();
  }

 }

至此,所有准备工作以及配置工作全部完成,运行应用程序,然后打开项目资源管理文件,就能看见log文件夹

源码下载地址:https://github.com/yaols/JWT.MvcDemo

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:


  • 本文相关:
  • .net core整合log4net的解决方案
  • .net下log4net使用方法详解
  • c#控制台程序使用log4net日志组件详解
  • log4net 日志记录详细介绍及应用
  • asp.net log4net的使用方法
  • log4net教程日志分类和自动维护示例
  • log4net配置和使用方法分享
  • log4net创建系统日志的详细步骤
  • log4net日志记录组件的使用步骤详解和下载
  • asp.net中根据xml动态创建使用web组件
  • .net core使用openxml导出、导入excel
  • "pagemethods未定义"或"对象不支持此属性或方法&
  • asp.net简单好用功能齐全图片上传工具类(水印、缩略图、裁剪等)
  • 在iis上重新注册.net framework 2.0的命令和参数详解
  • 已有打开的与此命令相关联的datareader,必须首先将它关闭。对于此
  • asp.net(c#)生成条形码 code39条码生成方法
  • asp.net中数据展示控件的嵌套使用示例
  • .net实现微信公共平台上传下载多媒体文件
  • 基于.net的单点登录(sso)实现解决方案
  • 免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved