.net 8.0日志记录log4net使用

第一步:下载NuGet 包 log4net和Microsoft.Extensions.Logging.Log4Net.AspNetCore包

第二步:添加配置文件 log4net.config

<?xml version="1.0" encoding="utf-8" ?>

<!-- log4net.config -->
<log4net>

	<!--通用日志类-->
	<!--日志类的名字-->
	<logger name="Common">
		<!--定义记录的日志级别-->
		<level value="ALL" />
		<!--记录到哪个介质中去-->
		<appender-ref ref="RollingLogFileAppender" />
	</logger>
	
	<!--其中layout节点的配置说明:
	    %m(message):输出的日志消息;
	    %n(newline):换行;
		%d(datetime):输出当前语句运行的时刻;
		%r(runtime):输出程序从运行到执行到当前语句时消耗的毫秒数;
		%t(threadid):当前语句所在的线程ID ;
		%p(priority): 日志的当前日志级别;
		%c(class):当前日志对象的名称;
		%L:输出语句所在的行号;
		%F:输出语句所在的文件名;
		%-10:表示最小长度为10,如果不够,则用空格填充;-->
	<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
		<!--日志路径-->
		<param name= "File" value= "Logs/"/>
		<!--多线程时采用最小锁定-->
		<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
		<!--是否是向文件中追加日志-->
		<param name= "AppendToFile" value= "true"/>
		<!--log保留天数-->
		<!--<param name= "MaxSizeRollBackups" value= "10"/>-->
		<!--日志文件名是否是固定不变的-->
		<param name= "StaticLogFileName" value= "false"/>
		<!--日志文件名格式为:2022-05-22.log-->
		<param name= "DatePattern" value= "yyyy-MM-dd'.log'"/>
		<!--日志根据日期滚动-->
		<param name= "RollingStyle" value= "Date"/>
		<layout type="log4net.Layout.PatternLayout">
			<param name="ConversionPattern" value="%n%d [%t] %-5p %c [%L] - %m %n" />
		</layout>
	</appender>
	
	<root>
		<!--(高) OFF > FATAL > ERROR > WARN > INFO > DEBUG > ALL (低) -->
		<level value="all" />
		<!--<appender-ref ref="ColoredConsoleAppender"/>-->
		<appender-ref ref="RollingLogFileAppender"/>
	</root>

</log4net>

第三步:在主函数Program.cs添加

builder.Logging.AddLog4Net("log4net.config");

第四步:在控制器里使用

 [ApiController]
 [Route("Email")]
 public class EmailCodeController : ControllerBase
 {
     private readonly IMailSeriver _mailSeriver;
     private readonly ILogger<EmailCodeController> _logger;
ILogger<EmailCodeController> logger)
     {
         _logger = logger;
     }

     [HttpGet(Name = "EmailSend")]
     public string Get( string to)
     {
         _logger.LogInformation( "发送邮件给:" + to);
          _logger.LogError("错误");
 		_logger.LogWarning("警告");
 		_logger.LogDebug("调试");
     }

 }

 

 

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值