log.cpp 1.2 KB

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