LogBase.cs 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace athosRT.tool
  7. {
  8. public static class LogObject
  9. {
  10. private static List<string> LogList = new List<string>();
  11. private static int LogNum = 100;
  12. public static log4net.ILog Log(string LoggerName)
  13. { //log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
  14. return log4net.LogManager.GetLogger(LoggerName);
  15. }
  16. public static void Info(string classname, string msg)
  17. {
  18. Log(classname).Info(msg);
  19. UpdataLog($"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} \t INFO \t{classname} \t {msg}");
  20. }
  21. public static void Info(string classname, string Device, string msg)
  22. {
  23. Log(classname).Info(Device + ":\t" + msg);
  24. }
  25. public static void Debug(string classname, string msg, Exception ex)
  26. {
  27. Log(classname).Debug(msg, ex);
  28. }
  29. public static void Error(string classname, Exception ex)
  30. {
  31. Log(classname).Error(ex);
  32. UpdataLog($"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} \t ERROR \t {classname} \t {ex}");
  33. }
  34. public static void Error(string classname, string msg, Exception ex)
  35. {
  36. Log(classname).Error(msg, ex);
  37. UpdataLog($"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} \t ERROR \t {classname} \t {ex}");
  38. }
  39. public static void Warning(string Device, string msg)
  40. {
  41. Log(Device).Warn(Device + ":\t" + msg);
  42. UpdataLog($"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} \t WARNING \t {Device} \t {msg}");
  43. }
  44. public static void Warning(string classname, string Device, string msg)
  45. {
  46. Log(classname).Warn(Device + ":\t" + msg);
  47. UpdataLog($"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} \t WARNING \t {Device} \t {msg}");
  48. }
  49. public static void Error(string classname, string msg)
  50. {
  51. Log(classname).Error(msg);
  52. UpdataLog($"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} \t ERROR \t {classname} \t {msg}");
  53. }
  54. public static void UpdataLog(string msg)
  55. {
  56. //添加
  57. LogList.Add(msg);
  58. //截断
  59. if (LogList.Count > LogNum)
  60. LogList = LogList.GetRange(LogList.Count - LogNum, LogNum);
  61. }
  62. public static List<string> GetLogList()
  63. {
  64. //返回
  65. return LogList;
  66. }
  67. public static bool ClearLogList()
  68. {
  69. LogList = new List<string>();
  70. return true;
  71. }
  72. }
  73. public static class GetName
  74. {
  75. public static string GetCurrentName()
  76. {
  77. return System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name;
  78. }
  79. }
  80. }