log.cpp 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #include <common.h>
  2. #include <log.h>
  3. int log_level=log_info;
  4. int enable_log_position=0;
  5. int enable_log_color=1;
  6. void log0(const char * file,const char * function,int line,int level,const char* str, ...) {
  7. if(level>log_level) return ;
  8. if(level>log_trace||level<0) return ;
  9. time_t timer;
  10. char buffer[100];
  11. struct tm* tm_info;
  12. time(&timer);
  13. tm_info = localtime(&timer);
  14. if(enable_log_color)
  15. printf("%s",log_color[level]);
  16. strftime(buffer, 100, "%Y-%m-%d %H:%M:%S", tm_info);
  17. printf("[%s][%s]",buffer,log_text[level]);
  18. if(enable_log_position)printf("[%s,func:%s,line:%d]",file,function,line);
  19. va_list vlist;
  20. va_start(vlist, str);
  21. vfprintf(stdout, str, vlist);
  22. va_end(vlist);
  23. if(enable_log_color)
  24. printf("%s",RESET);
  25. //printf("\n");
  26. //if(enable_log_color)
  27. //printf(log_color[level]);
  28. fflush(stdout);
  29. if(log_level==log_fatal)
  30. {
  31. about_to_exit=1;
  32. }
  33. }
  34. void log_bare(int level,const char* str, ...)
  35. {
  36. if(level>log_level) return ;
  37. if(level>log_trace||level<0) return ;
  38. if(enable_log_color)
  39. printf("%s",log_color[level]);
  40. va_list vlist;
  41. va_start(vlist, str);
  42. vfprintf(stdout, str, vlist);
  43. va_end(vlist);
  44. if(enable_log_color)
  45. printf("%s",RESET);
  46. fflush(stdout);
  47. }