LogService.cs 812 B

1234567891011121314151617181920212223242526272829303132333435
  1. using Serilog;
  2. namespace YZWater.Core.Services;
  3. /// <summary>
  4. /// 日志服务 - Serilog 初始化(应在应用最早阶段调用)
  5. /// </summary>
  6. public static class LogService
  7. {
  8. private static bool _initialized;
  9. /// <summary>
  10. /// 初始化 Serilog,应在应用启动时最先调用
  11. /// </summary>
  12. public static void Initialize()
  13. {
  14. if (_initialized) return;
  15. Log.Logger = new LoggerConfiguration()
  16. .MinimumLevel.Debug()
  17. .WriteTo.Console()
  18. .WriteTo.File("Logs/log-.txt", rollingInterval: RollingInterval.Day)
  19. .CreateLogger();
  20. _initialized = true;
  21. }
  22. /// <summary>
  23. /// 关闭并刷新日志缓冲区
  24. /// </summary>
  25. public static void Shutdown()
  26. {
  27. Log.CloseAndFlush();
  28. }
  29. }