中间件标准版5.1git,去除基础模块

Logger.h 2.4KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. /*************************************************************************
  2. 【文件名】 Logger.h
  3. 【功能模块和目的】 日志模块导出接口
  4. 【开发者及日期】 郑石诺 2015/01/06
  5. 【版本】 V1.0.0
  6. 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
  7. 【更改记录】
  8. *************************************************************************/
  9. #pragma once
  10. #ifdef LOGGER_EXPORTS
  11. #define LOGGER_API __declspec(dllexport)
  12. #else
  13. #define LOGGER_API __declspec(dllimport)
  14. #endif
  15. // 相关常量定义:
  16. #define LOG_BUFFER_LENGTH 1024 // 日志字符串长度
  17. #define LOG_DATATIME_LEN 32
  18. // 日志相关变量定义:
  19. typedef enum tagLOG_CLASS /* 日志类型 */
  20. {
  21. LOG_CLASS_SOCKET = 0x00, // socket日志
  22. LOG_CLASS_DEV = 0x01, // 设备日志
  23. LOG_CLASS_BUSI = 0x02, // 业务日志
  24. LOG_CLASS_GENERAL = 0x03 // 全部类型
  25. } LOG_CLASS;
  26. typedef enum tagLOG_LEVEL /* 日志级别 */
  27. {
  28. LOG_LEVEL_WARNING = 0x01, // 警告
  29. LOG_LEVEL_ERROR = 0x02, // 错误
  30. LOG_LEVEL_NORMAL = 0x03, // 普通
  31. LOG_LEVEL_TRACE = 0x04 //跟踪
  32. } LOG_LEVEL;
  33. typedef enum tagLOG_DEV /* 日志发起设备 */
  34. {
  35. LOG_DEV_CTI = 0, // CTI
  36. LOG_DEV_IVR = 1, // IVR
  37. LOG_DEV_ACD = 2, // ACD
  38. LOG_DEV_VS = 3, // 语音平台
  39. LOG_DEV_FS = 4, // 传真平台
  40. LOG_DEV_AC = 5, // 自动外呼
  41. LOG_DEV_SC = 6, // 毅航控制系统
  42. LOG_DEV_GUARD = 7, // 守护进程
  43. LOG_DEV_SERVER = 8 // http ws servere
  44. } LOG_DEV;
  45. // 日志信息结构:
  46. typedef struct tagLOG_INFO /* 日志信息结构体 */
  47. {
  48. CString strInfo; // 日志内容
  49. LOG_CLASS nClass; // 类型
  50. LOG_LEVEL nLevel; // 级别
  51. } T_LOG_INFO;
  52. /*************************************************************************
  53. 【类名】 ILogger
  54. 【功能】 日志记录接口
  55. 【接口说明】
  56. 【开发者及日期】 郑石诺 2015/01/06
  57. 【版本】 V1.0.0
  58. 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
  59. 【更改记录】
  60. *************************************************************************/
  61. class LOGGER_API ILogger
  62. {
  63. public:
  64. virtual ~ILogger(void) = 0 {}
  65. static ILogger& getInstance(void);
  66. virtual void init( CListCtrl* pList, LOG_DEV nDevType, LPCTSTR lpFilePath = NULL ) = 0; // 初始化
  67. virtual void close(void) = 0; // 关闭
  68. virtual void start(void) = 0; // 启动日志显示
  69. virtual void stop(void) = 0; // 停止日志显示
  70. virtual void log( LOG_CLASS nClass, LOG_LEVEL nLevel, char* format, ... ) = 0; // 显示日志
  71. virtual void filterShow( LOG_CLASS nClass = LOG_CLASS_GENERAL, LOG_LEVEL nLevel = LOG_LEVEL_NORMAL ) = 0; // 日志过滤
  72. virtual BOOL isStart(void) = 0;
  73. };