Net.Core Mvc 添加 log 日志

1: 首先在 Nuget 安装插件

2:添加 log 配置

在项目中新创件一个文件夹 ConfigFile 在文件家里面添加 log4net.config

log4net.config 里面写入

XML 复制代码
<?xml version="1.0" encoding="utf-8"?>
<configuration>
	<log4net>
		<!--跟配置-->
		<root>
			<!--日志级别:可选值:ERROR > WARN > INFO > DEBUG-->
			<level value="ERROR"/>
			<level value="WARN"/>
			<level value="INFO"/>
			<level value="DEBUG"/>
			<appender-ref ref="ErrorLog" />
			<appender-ref ref="WarnLog" />
			<appender-ref ref="InfoLog" />
			<appender-ref ref="DebugLog"/>
		</root>
		<!-- 错误 Error.log-->
		<appender name="ErrorLog" type="log4net.Appender.RollingFileAppender">
			<!--目录路径,可以是相对路径或绝对路径-->
			<param name="File" value="C:\logs\"/>
			<!--文件名,按日期生成文件夹来-->
			<appender naem="DatePattern" value="/yyyy-MM-dd/'ErrorLog.log'"/>
			<!--追加到文件-->
			<appendToFile value="true"/>
			<!--创建日志文件的方式,可选值:Date[日期],文件大小[Size],混合[Composite]-->
			<rollingStyle value="Composite"/>
			<!--写到一个文件-->
			<staticLogFileName value="false"/>
			<!--单个文件大小。单位:KB|MB|GB-->
			<maximumFileSize value="200MB"/>
			<!--最多保留的文件数,设为"-1"则不限-->
			<maxSizeRollBackups value="-1"/>
			<!--日志格式-->
			<layout type="log4net.Layout.PatternLayout">
				<conversionPattern value="%date [%thread] %-5level %logger - %message%newline"/>
			</layout>
			<filter type="log4net.Filter.LevelRangeFilter">
				<param name="LevelMin" value="ERROR" />
				<param name="LevelMax" value="ERROR" />
			</filter>
		</appender>
		<appender name="WarnLog" type="log4net.Appender.RollingFileAppender">
			<!--目录路径,可以是相对路径或绝对路径-->
			<param name="File" value="C:\logs\"/>
			<!--文件名,按日期生成文件夹-->
			<param name="DatePattern" value="/yyyy-MM-dd/'WarnLog.log'"/>
			<!--追加到文件-->
			<appendToFile value="true"/>
			<!--创建日志文件的方式,可选值:Date[日期],文件大小[Size],混合[Composite]-->
			<rollingStyle value="Composite"/>
			<!--写到一个文件-->
			<staticLogFileName value="false"/>
			<!--单个文件大小。单位:KB|MB|GB-->
			<maximumFileSize value="200MB"/>
			<!--最多保留的文件数,设为"-1"则不限-->
			<maxSizeRollBackups value="-1"/>
			<!--日志格式-->
			<layout type="log4net.Layout.PatternLayout">
				<!--每条日志末尾的文字说明-->
				<!--输出格式-->
				<!--样例:2008-03-26 13:42:32,111 [10] INFO  Log4NetDemo.MainClass [(null)] - info-->
				<conversionPattern value="%newline %n记录时间:%date %n线程ID:[%thread] %n日志级别:  %-5level %n错误描述:%message%newline %n" />
			</layout>
			<filter type="log4net.Filter.LevelRangeFilter">
				<param name="LevelMin" value="WARN" />
				<param name="LevelMax" value="WARN" />
			</filter>
		</appender>
		<!-- 信息 Info.log-->
		<appender name="InfoLog" type="log4net.Appender.RollingFileAppender">
			<!--目录路径,可以是相对路径或绝对路径-->
			<param name="File" value="C:\logs\"/>
			<!--文件名,按日期生成文件夹-->
			<!--<param name="DatePattern" value="yyyyMM\\yyyyMMdd'.txt'" />-->
			<param name="DatePattern" value="/yyyy-MM-dd/'InfoLog.log'"/>
			<!-- 当将日期作为日志文件的名字时,必须将staticLogFileName的值设置为false -->
			<staticLogFileName value="false" />
			<!--追加到文件-->
			<appendToFile value="true"/>
			<!--防止多线程时不能写log-->
			<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
			<!--创建日志文件的方式,可选值:Date[日期],文件大小[Size],混合[Composite]-->
			<rollingStyle value="Composite"/>
			<!--写到一个文件-->
			<staticLogFileName value="false"/>
			<!--单个文件大小。单位:KB|MB|GB-->
			<maximumFileSize value="200MB"/>
			<!--最多保留的文件数,设为"-1"则不限-->
			<maxSizeRollBackups value="-1"/>
			<!--日志格式-->
			<layout type="log4net.Layout.PatternLayout">
				<conversionPattern value="[%d{HH:mm:ss}]%m%n"/>
			</layout>
			<filter type="log4net.Filter.LevelRangeFilter">
				<param name="LevelMin" value="INFO" />
				<param name="LevelMax" value="INFO" />
			</filter>
		</appender>
		<!-- 调试 Debug.log-->
		<appender name="DebugLog" type="log4net.Appender.RollingFileAppender">
			<!--目录路径,可以是相对路径或绝对路径-->
			<param name="File" value="C:\logs\"/>
			<!--文件名,按日期生成文件夹-->
			<param name="DatePattern" value="/yyyy-MM-dd/'DebugLog.log'"/>
			<!--追加到文件-->
			<appendToFile value="true"/>
			<!--创建日志文件的方式,可选值:Date[日期],文件大小[Size],混合[Composite]-->
			<rollingStyle value="Composite"/>
			<!--写到一个文件-->
			<staticLogFileName value="false"/>
			<!--单个文件大小。单位:KB|MB|GB-->
			<maximumFileSize value="200MB"/>
			<!--最多保留的文件数,设为"-1"则不限-->
			<maxSizeRollBackups value="-1"/>
			<!--日志格式-->
			<layout type="log4net.Layout.PatternLayout">
				<!--每条日志末尾的文字说明-->
				<!--输出格式-->
				<!--样例:2008-03-26 13:42:32,111 [10] INFO  Log4NetDemo.MainClass [(null)] - info-->
				<conversionPattern value="%newline %n记录时间:%date %n线程ID:[%thread] %n日志级别:  %-5level %n错误描述:%message%newline %n" />
			</layout>
			<filter type="log4net.Filter.LevelRangeFilter">
				<param name="LevelMin" value="DEBUG" />
				<param name="LevelMax" value="DEBUG" />
			</filter>
		</appender>
	</log4net>


</configuration>

3 :在 Program 配置里添加

4: 在控制台打印数据

相关推荐
lzhdim1 天前
C#开发者必知的100个黑科技(前50)!从主构造函数到源生成器全面掌握
开发语言·科技·c#
yong99901 天前
基于C#与三菱FX5U PLC实现以太网通信
网络·c#·php
CreasyChan1 天前
C#特性(Attributes)详解
开发语言·c#
CreasyChan1 天前
C# 委托/事件/UnityEvent 详解
开发语言·c#
聊询QQ:276998851 天前
CNN - BiLSTM - SelfAttention在Matlab中的多变量回归预测探索
mvc
就是有点傻1 天前
如何创建一个WebApi服务端
服务器·c#
2301_800256111 天前
第十一章中的函数解读(1)
后端·asp.net
她说彩礼65万1 天前
C# params使用
开发语言·c#·log4j
专注VB编程开发20年1 天前
C#内存加载dll和EXE是不是差不多,主要是EXE有入口点
数据库·windows·microsoft·c#
木易 士心1 天前
MVC、MVP 与 MVVM:Android 架构演进之路
android·架构·mvc