ILogNet.cs 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. using System;
  2. namespace HslCommunication.LogNet
  3. {
  4. /// <summary>
  5. /// 一个通用的日志接口
  6. /// </summary>
  7. public interface ILogNet : IDisposable
  8. {
  9. /// <summary>
  10. /// 文件存储模式,1:单文件,2:根据大小,3:根据时间
  11. /// </summary>
  12. int LogSaveMode { get; }
  13. /// <summary>
  14. /// 存储之前引发的事件,允许额外的操作
  15. /// </summary>
  16. event EventHandler<HslEventArgs> BeforeSaveToFile;
  17. /// <summary>
  18. /// 自定义的消息记录
  19. /// </summary>
  20. /// <param name="degree"></param>
  21. /// <param name="text"></param>
  22. void RecordMessage(HslMessageDegree degree, string text);
  23. /// <summary>
  24. /// 写入一条调试日志
  25. /// </summary>
  26. /// <param name="text">日志内容</param>
  27. void WriteDebug(string text);
  28. /// <summary>
  29. /// 写入一条调试日志
  30. /// </summary>
  31. /// <param name="keyWord">关键字</param>
  32. /// <param name="text">日志内容</param>
  33. void WriteDebug(string keyWord, string text);
  34. /// <summary>
  35. /// 写入一条解释性的信息
  36. /// </summary>
  37. /// <param name="description"></param>
  38. void WriteDescrition(string description);
  39. /// <summary>
  40. /// 写入一条错误日志
  41. /// </summary>
  42. /// <param name="text">日志内容</param>
  43. void WriteError(string text);
  44. /// <summary>
  45. /// 写入一条错误日志
  46. /// </summary>
  47. /// <param name="keyWord">关键字</param>
  48. /// <param name="text">日志内容</param>
  49. void WriteError(string keyWord, string text);
  50. /// <summary>
  51. /// 写入一条异常信息
  52. /// </summary>
  53. /// <param name="keyWord">关键字</param>
  54. /// <param name="ex">异常</param>
  55. void WriteException(string keyWord, Exception ex);
  56. /// <summary>
  57. /// 写入一条异常信息
  58. /// </summary>
  59. /// <param name="keyWord">关键字</param>
  60. /// <param name="text">内容</param>
  61. /// <param name="ex">异常</param>
  62. void WriteException(string keyWord, string text, Exception ex);
  63. /// <summary>
  64. /// 写入一条致命日志
  65. /// </summary>
  66. /// <param name="text">日志内容</param>
  67. void WriteFatal(string text);
  68. /// <summary>
  69. /// 写入一条致命日志
  70. /// </summary>
  71. /// <param name="keyWord">关键字</param>
  72. /// <param name="text">日志内容</param>
  73. void WriteFatal(string keyWord, string text);
  74. /// <summary>
  75. /// 写入一条信息日志
  76. /// </summary>
  77. /// <param name="text">日志内容</param>
  78. void WriteInfo(string text);
  79. /// <summary>
  80. /// 写入一条信息日志
  81. /// </summary>
  82. /// <param name="keyWord">关键字</param>
  83. /// <param name="text">日志内容</param>
  84. void WriteInfo(string keyWord, string text);
  85. /// <summary>
  86. /// 写入一行换行符
  87. /// </summary>
  88. void WriteNewLine();
  89. /// <summary>
  90. /// 写入一条警告日志
  91. /// </summary>
  92. /// <param name="text">日志内容</param>
  93. void WriteWarn(string text);
  94. /// <summary>
  95. /// 写入一条警告日志
  96. /// </summary>
  97. /// <param name="keyWord">关键字</param>
  98. /// <param name="text">日志内容</param>
  99. void WriteWarn(string keyWord, string text);
  100. /// <summary>
  101. /// 设置日志的存储等级,高于该等级的才会被存储
  102. /// </summary>
  103. /// <param name="degree"></param>
  104. void SetMessageDegree(HslMessageDegree degree);
  105. /// <summary>
  106. /// 获取已存在的日志文件名称
  107. /// </summary>
  108. /// <returns></returns>
  109. string[] GetExistLogFileNames();
  110. }
  111. }