log.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #ifndef UDP2RAW_LOG_MYLOG_H_
  2. #define UDP2RAW_LOG_MYLOG_H_
  3. #include "common.h"
  4. using namespace std;
  5. #define RED "\x1B[31m"
  6. #define GRN "\x1B[32m"
  7. #define YEL "\x1B[33m"
  8. #define BLU "\x1B[34m"
  9. #define MAG "\x1B[35m"
  10. #define CYN "\x1B[36m"
  11. #define WHT "\x1B[37m"
  12. #define RESET "\x1B[0m"
  13. const int log_never=0;
  14. const int log_fatal=1;
  15. const int log_error=2;
  16. const int log_warn=3;
  17. const int log_info=4;
  18. const int log_debug=5;
  19. const int log_trace=6;
  20. const int log_end=7;
  21. const char log_text[][20]={"NEVER","FATAL","ERROR","WARN","INFO","DEBUG","TRACE",""};
  22. const char log_color[][20]={RED,RED,RED,YEL,GRN,MAG,""};
  23. extern int log_level;
  24. extern int enable_log_position;
  25. extern int enable_log_color;
  26. #ifdef MY_DEBUG
  27. #define mylog(__first_argu__dummy_abcde__,...) printf(__VA_ARGS__)
  28. #else
  29. #define mylog(...) log0(__FILE__,__FUNCTION__,__LINE__,__VA_ARGS__)
  30. #endif
  31. //#define mylog(__first_argu__dummy_abcde__,...) {;}
  32. void log0(const char * file,const char * function,int line,int level,const char* str, ...);
  33. void log_bare(int level,const char* str, ...);
  34. #endif