.Net Core使用 Log4Net

举报
清雨小竹 发表于 2022/09/25 01:39:31 2022/09/25
【摘要】 public class YFLog { private static log4net.ILog logger = null; public static void logInfo(string logstr) { Console.WriteLine(logs...

  
  1. public class YFLog
  2. {
  3. private static log4net.ILog logger = null;
  4. public static void logInfo(string logstr)
  5. {
  6. Console.WriteLine(logstr);
  7. if(initLog4net())
  8. logger.Info(logstr);
  9. }
  10. public static void logInfo(string format, params object[] args)
  11. {
  12. Console.WriteLine(format, args);
  13. if (initLog4net())
  14. logger.InfoFormat(format, args);
  15. }
  16. public static void logError(string logstr)
  17. {
  18. Console.WriteLine(logstr);
  19. if (initLog4net())
  20. logger.Error(logstr);
  21. }
  22. public static void logError(string format, params object[] args)
  23. {
  24. Console.WriteLine(format, args);
  25. if (initLog4net())
  26. logger.ErrorFormat(format, args);
  27. }
  28. private static object objlock = new object();//初始化log用的锁
  29. private static bool initLog4net()
  30. {
  31. if (logger != null)
  32. return true;
  33. lock (objlock)
  34. {
  35. if (logger == null)
  36. {
  37. ILoggerRepository repository = LogManager.CreateRepository("NETCoreRepository");
  38. XmlConfigurator.Configure(repository, new FileInfo("log4net.config"));
  39. logger = LogManager.GetLogger(repository.Name, "NETCorelog4net");
  40. return true;
  41. }
  42. }
  43. return false;
  44. }
  45. }

log4net.config


  
  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <configuration>
  3. <!-- This section contains the log4net configuration settings -->
  4. <log4net>
  5. <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
  6. <layout type="log4net.Layout.PatternLayout" value="%date [%thread] %-5level %logger - %message%newline" />
  7. </appender>
  8. <appender name="errorAppender" type="log4net.Appender.RollingFileAppender">
  9. <file value="Logs/" />
  10. <appendToFile value="true" />
  11. <rollingStyle value="Composite" />
  12. <staticLogFileName value="false" />
  13. <datePattern value="error-yyyyMMdd'.log'" />
  14. <maxSizeRollBackups value="10" />
  15. <maximumFileSize value="1MB" />
  16. <layout type="log4net.Layout.PatternLayout">
  17. <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
  18. </layout>
  19. </appender>
  20. <appender name="infoAppender" type="log4net.Appender.RollingFileAppender">
  21. <file value="Logs/" />
  22. <appendToFile value="true" />
  23. <rollingStyle value="Composite" />
  24. <staticLogFileName value="false" />
  25. <datePattern value="yyyyMMdd'.log'" />
  26. <maxSizeRollBackups value="10" />
  27. <maximumFileSize value="1MB" />
  28. <layout type="log4net.Layout.PatternLayout">
  29. <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
  30. </layout>
  31. </appender>
  32. <!-- Setup the root category, add the appenders and set the default level -->
  33. <root>
  34. <level value="ALL" />
  35. <appender-ref ref="ConsoleAppender" />
  36. <appender-ref ref="errorAppender" />
  37. <appender-ref ref="infoAppender" />
  38. </root>
  39. </log4net>
  40. </configuration>


文章来源: zzzili.blog.csdn.net,作者:清雨小竹,版权归原作者所有,如需转载,请联系作者。

原文链接:zzzili.blog.csdn.net/article/details/79277233

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。