C#添加log4日志
第一步导入log4net
在vs的程序包管理器控制台中执行命令
NuGet\Install-Package log4net -Version 2.0.0
第二步加帮助类HttpHelper
using System;
using System.Reflection;
using log4net;
using log4net.Config; namespace PuYangHiqs
{
public class Logger
{
private static Logger _instance = null;
private static object _locker = new object();
private ILog _logger; private Logger()
{
XmlConfigurator.Configure();
Type type =MethodBase.GetCurrentMethod().DeclaringType;
this._logger = LogManager.GetLogger(type);
} public static Logger Instance()
{
if (_instance == null)
{
lock (_locker)
{
if (_instance == null)
{
_instance = new Logger();
}
}
}
return _instance;
} public void Debug(object obj)
{
this._logger.Debug(obj);
} public void Error(object obj)
{
this._logger.Error(obj);
} public void Fatal(object obj)
{
this._logger.Fatal(obj);
} public void Info(object obj)
{
this._logger.Info(obj);
} public void Warn(object obj)
{
this._logger.Warn(obj);
} public void Debug(object obj, Exception e)
{
this._logger.Debug(obj, e);
} public void Error(object obj, Exception e)
{
this._logger.Error(obj, e);
} public void Fatal(object obj, Exception e)
{
this._logger.Fatal(obj, e);
} public void Info(object obj, Exception e)
{
this._logger.Info(obj, e);
} public void Warn(object obj, Exception e)
{
this._logger.Warn(obj, e);
} }
}
第三步在配置文件中加入配置文件
代码如下
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
</configSections>
<log4net>
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="Logs/"/>
<appendToFile value="true"/>
<!--按照何种方式产生多个日志文件(日期[Date],文件大小[Size],混合[Composite])-->
<rollingStyle value="Date"/>
<!--这是按日期产生文件夹-->
<datePattern value="yyyyMM\\yyyyMMdd'.txt'"/>
<!--是否只写到一个文件中-->
<staticLogFileName value="false"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%-5level %date [%-5.5thread] %-40.40logger - %message%newline"/>
</layout>
</appender>
<root>
<appender-ref ref="RollingFileAppender"/>
<level value="WARN"/>
</root>
</log4net>
使用方法:
Logger.Instance().Error($"RisSendRegQueue(报到登记/取消登记),入参{json},出参{data}");
日志记录地址和文件命名


C#添加log4日志的更多相关文章
- aop为系统添加操作日志,注入或配置声明的方式来实现
最近做项目实现操作记录添加日志,由于aop这两种实现方式各有优缺点,所以都实现了一下以后根据具体业务选择. 1实现方式一注入: 1.1首先在xml中开启aop注入,需要引入的包此处省略,可百度自己查找 ...
- 类中添加log4j日志
在编写代码的时候需要随时查看工作日志,查看工作日志的好处就是随时能检查出错误.所以我一般就需要在编写代码的前期添加工作日志,以便更好的查看相关错误输出. 以一个springmvc小demo为例子 主 ...
- python添加fluent日志记录-aop
python添加fluent日志,aop实现 1.配置fluent相关信息 fluent_config.ini fluent_config.ini [fluent.aop] #is support f ...
- spring/spirng boot添加fluent日志-aop
此项目以aop的形式添加fluent 日志 sample介绍 spring-mvc-aop-helloworld 为spring mvc aop condition toolcommontest 为s ...
- python添加fluent日志记录
istio默认会进行日志的记录,但是仅仅记录到服务.以及服务之间调用的信息,不记录业务日志. 如: 所以需要添加业务日志记录. 1.python引入package fluentmsgpack 2.代码 ...
- springboot添加fluent日志记录
istio默认会进行日志的记录,但是仅仅记录到服务.以及服务之间调用的信息,不记录业务日志. 如: 所以需要添加业务日志记录. 1.引入依赖 <dependency> <gr ...
- .NetCore中使用ExceptionLess 添加操作日志
上一篇文章已经扩展了日志,下面我们在结合下处理操作日志 通常我们想到操作日志 可能想到的参数可能有 模块 方法 参数内容 操作人 操作时间 操作 Ip 下面我们就来结合这些信息添加操作日志 如果要在代 ...
- .NetCore 中扩展ExceptionLess 实现链式方法添加操作日志
在使用ExceptionLess添加日志的时候,发现还是有一些写法上的个人觉得不爽的地方,比如添加Info日志 ExceptionlessClient.Default.CreateLog(source ...
- asp.net 添加错误日志
在开发程序中,错误日志很有必要.今天就把使用到的添加错误日志,记录下来,方便以后查看 利用的asp.net错误处理机制 Application_Error 贴出代码 protected void Ap ...
- C#将异常信息添加到日志
C#将程序抛出的异常信息添加到错误日志 错误日志是软件用来记录运行时出错信息的文本文件.编程人员和维护人员等可以利用错误日志对系统进行调试和维护. 为程序添加错误日志的好处是当程序有运行错误时,根据错 ...
随机推荐
- 爱科微AIC8800D80P Wi-Fi6模块驱动移植
1. 简介 开发环境Ubuntu20.04 目标平台:瑞芯微RK356X 目标平台内核版本:4.19.234 wifi模块型号:AIC8800D80P Wi-Fi6/BT5.0 2. 硬件 wifi模 ...
- 内网 BitTorrent 下载环境搭建——基于 Transmission
背景 前段时间为公司的产品增加了磁力链.种子下载的能力,测试时发现网上搜到的热门种子,有时好用,有时不好用,不好用主要表现在:没速度.速度慢.速度不稳定.下载一部分后没速度等,严重拖累了测试工作.为此 ...
- 【一步步开发AI运动小程序】十六、AI运动识别中,如何判断人体站位?
[云智AI运动识别小程序插件],可以为您的小程序,赋于人体检测识别.运动检测识别.姿态识别检测AI能力.本地原生识别引擎,无需依赖任何后台或第三方服务,有着识别速度快.体验佳.扩展性强.集成快.成本低 ...
- php 如何创建uuid
传统的创建uuid的方法是自己写个函数实现随机 <?php function create_uuid($prefix="") { $chars = md5(uniqid(mt ...
- pytorch的四个hook函数
训练神经网络模型有时需要观察模型内部模块的输入输出,或是期望在不修改原始模块结构的情况下调整中间模块的输出,pytorch可以用hook回调函数来实现这一功能.主要使用四个hook注册函数:regis ...
- NOIP2024加赛8
NOIP2024加赛8 T1 flandre 第 4 个样例没给全,说明这可以直接猜结论 首先我们假设选定了 $ x $ 个数,那么我们肯定是把他们从小到大排好序依次放,这样才能使整体效果最大.然后我 ...
- Helm部署SkyWalking
一 . 部署ElasticSearch 1.下载安装包 helm repo add elastic https://helm.elastic.cohelm pull elastic/elasticse ...
- Jenkis 简单介绍—持续集成、持续交付的工具
Jenkis是什么? 首先是一款持续集成.持续交付的工具. Jenkis的思想是自动化部署:当我们向版本库提交最新的代码后,应用服务器(tomcat)就会自动从Git / svn上拉取最新的包,再重新 ...
- H5 新增表单
1.提示占位 placeholder <input type="text" name="userName" placeholder="请输入用户 ...
- OpenTelemetry 101:面向 IT 领导者和爱好者的非技术指南
如果您从事软件开发. SRE或DevOps工作,您可能听说过可观察性.遥测和跟踪等术语.这些概念对于理解应用程序在生产环境中的行为至关重要,并且它们是现代软件开发实践的重要组成部分. 您可能还听说过在 ...