LogHelper.cs 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. using System;
  2. using System.Linq;
  3. namespace LampInspectionMachine.Log4xml
  4. {
  5. public class LogHelper
  6. {
  7. public delegate void LogChangHandler(Log log);
  8. public static LogChangHandler logChangHandler;
  9. // #region 执行日志
  10. private static readonly log4net.ILog infologger = log4net.LogManager.GetLogger("LogInfo");
  11. /// <summary>
  12. /// 普通日志
  13. /// </summary>
  14. /// <param name="message">日志内容</param>
  15. public static void Info(string message)
  16. {
  17. // 可以改成type typeof(类)
  18. if ( infologger.IsInfoEnabled )
  19. {
  20. infologger.Info(message);
  21. logChangHandler?.Invoke(new Log() { Time = DateTime.Now.ToString("yyyy-MM-dd:HH:mm:ss"), Msg = message });
  22. }
  23. }
  24. // #region 执行日志
  25. private static readonly log4net.ILog camerainfologger = log4net.LogManager.GetLogger("CameraLogInfo");
  26. /// <summary>
  27. /// 相机日志
  28. /// </summary>
  29. /// <param name="message">日志内容</param>
  30. public static void CameraInfo(string message)
  31. {
  32. // 可以改成type typeof(类)
  33. if (camerainfologger.IsInfoEnabled)
  34. {
  35. camerainfologger.Info(message);
  36. logChangHandler?.Invoke(new Log() { Time = DateTime.Now.ToString("yyyy-MM-dd:HH:mm:ss"), Msg = message });
  37. }
  38. }
  39. private static log4net.ILog alarmlog4net =log4net.LogManager.GetLogger("AlarmLogInfo");
  40. /// <summary>
  41. /// 警告日志
  42. /// </summary>
  43. /// <param name="message">警告日志</param>
  44. public static void Warn(string message)
  45. {
  46. if ( alarmlog4net.IsWarnEnabled )
  47. {
  48. alarmlog4net.Warn(message);
  49. }
  50. }
  51. private static log4net.ILog Errlog4net =log4net.LogManager.GetLogger("ErrLogInfo");
  52. /// <summary>
  53. /// 错误日志
  54. /// </summary>
  55. /// <param name="message">错误日志</param>
  56. public static void Error(string message)
  57. {
  58. if ( Errlog4net.IsInfoEnabled )
  59. {
  60. Errlog4net.Error(message);
  61. }
  62. }
  63. public static bool CheckLogChangHandler(LogChangHandler handler)
  64. {
  65. return logChangHandler.GetInvocationList().Contains(handler);
  66. }
  67. }
  68. public class Log
  69. {
  70. private string time;
  71. private string msg;
  72. public string Time { get => time; set => time = value; }
  73. public string Msg { get { return time + " " + msg; } set => msg = value; }
  74. }
  75. }