.net7 控制台使用 log4net
1.nuget 安装 log4net
2.添加配置文件,以下是在是添加的配置文件,对log4net.config文件右击属性,选择 “复制到输出目录”:始终复制
3.把以下内容拷贝进去
<?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" /> </configSections> <log4net> <!--数据日志--> <appender name="InfoRollingFileAppender" type="log4net.Appender.RollingFileAppender"> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <param name="File" value="Log\Info\" /> <param name="AppendToFile" value="true" /> <param name="rollingStyle" value="Date" /> <param name="datePattern" value="yyyy-MM-dd.'Info.log'" /> <param name="staticLogFileName" value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="记录时间:%date %n日志级别:%-5level %n记录类:%logger%n记录描述:%message%n%n" /> </layout> <filter type="log4net.Filter.LevelRangeFilter"> <param name="LevelMin" value="INFO" /> <param name="LevelMax" value="INFO" /> </filter> </appender> <!--错误日志--> <appender name="ErrorRollingFileAppender" type="log4net.Appender.RollingFileAppender"> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <param name="File" value="Log\Error\" /> <param name="AppendToFile" value="true" /> <param name="rollingStyle" value="Date" /> <param name="datePattern" value="yyyy-MM-dd.'error.log'" /> <param name="staticLogFileName" value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="记录时间:%date %n日志级别:%-5level %n出错类:%logger%n错误描述:%message%n%n" /> </layout> <filter type="log4net.Filter.LevelRangeFilter"> <param name="LevelMin" value="ERROR" /> <param name="LevelMax" value="ERROR" /> </filter> </appender> <!--调试日志--> <appender name="DebugRollingFileAppender" type="log4net.Appender.RollingFileAppender"> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <param name="File" value="Log\Debug\" /> <param name="AppendToFile" value="true" /> <param name="rollingStyle" value="Date" /> <param name="datePattern" value="yyyy-MM-dd.'debug.log'" /> <param name="staticLogFileName" value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="记录时间:%date %n日志级别:%-5level %n调试类:%logger%n日志描述:%message%n%n" /> </layout> <filter type="log4net.Filter.LevelRangeFilter"> <param name="LevelMin" value="DEBUG" /> <param name="LevelMax" value="DEBUG" /> </filter> </appender> <root> <level value="DEBUG" /> <!--文件形式记录日志--> <appender-ref ref="ErrorRollingFileAppender" /> <appender-ref ref="DebugRollingFileAppender" /> <appender-ref ref="InfoRollingFileAppender" /> </root> </log4net> </configuration>
4.开始写日志
5.输出日志
6.asp.net core log4net 配置文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | <? xml version="1.0" encoding="utf-8"?> < log4net > <!-- Define some output appenders --> < appender name="rollingAppender" type="log4net.Appender.RollingFileAppender"> < file value="log\log.txt" /> <!--追加日志内容--> < appendToFile value="true" /> <!--防止多线程时不能写Log,官方说线程非安全--> < lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <!--可以为:Once|Size|Date|Composite--> <!--Composite为Size和Date的组合--> < rollingStyle value="Composite" /> <!--当备份文件时,为文件名加的后缀--> < datePattern value="yyyyMMdd.TXT" /> <!--日志最大个数,都是最新的--> <!--rollingStyle节点为Size时,只能有value个日志--> <!--rollingStyle节点为Composite时,每天有value个日志--> < maxSizeRollBackups value="20" /> <!--可用的单位:KB|MB|GB--> < maximumFileSize value="3MB" /> <!--置为true,当前最新日志文件名永远为file节中的名字--> < staticLogFileName value="true" /> <!--输出级别在INFO和ERROR之间的日志--> < filter type="log4net.Filter.LevelRangeFilter"> < param name="LevelMin" value="INFO" /> < param name="LevelMax" value="ERROR" /> </ filter > < layout type="log4net.Layout.PatternLayout"> < conversionPattern value="%date [%thread] %-5level %logger - %message%newline"/> </ layout > </ appender > < root > < priority value="ALL"/> < level value="ALL"/> < appender-ref ref="rollingAppender" /> </ root > </ log4net > |
分类:
.net / .net core
标签:
.net
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人