打印LOG

原创 2007年09月13日 09:53:00
  1.  ////////////////////////////////////////////////////////////////////////////////////
  2.  enum _LOG_LEVEL //LOG级别
  3.  {
  4.   _LOG_LEVEL_ERROR = 0,
  5.   _LOG_LEVEL_DEBUG,
  6.   _LOG_LEVEL_RELEASE,
  7.  };
  8.  ////////////////////////////////////////////////////////////////////////////////////
  9.  class CTimeBase
  10.  {
  11.  public:
  12.   static string GetCurrentTime()//获取当前时间
  13.   {
  14.    string strTime = "";
  15.    struct tm *ptm = NULL;
  16.    time_t tme;
  17.    tme = time(NULL);
  18.    ptm = localtime(&tme);
  19.    char szTime[256];
  20.    memset(szTime, 0, 256);
  21.    sprintf(szTime, "%d-%02d-%02d %02d:%02d:%02d", (ptm->tm_year + 1900),
  22.     ptm->tm_mon, ptm->tm_mday, ptm->tm_hour, ptm->tm_min, ptm->tm_sec);
  23.    strTime = szTime;
  24.    return strTime;
  25.   }
  26.  public:
  27.  };
  28.  ////////////////////////////////////////////////////////////////////////////////////
  29.  void Log(size_t nLogLevel, char *pszFmt, va_list argptr)
  30.  {
  31.   assert(pszFmt != NULL);
  32.   assert(strlen(pszFmt) < 1024);
  33.   
  34.   switch(nLogLevel)
  35.   {
  36.   case _LOG_LEVEL_DEBUG:
  37.    {
  38.     char szLogLine[1000];
  39.     if (_vsntprintf(szLogLine, ARRSIZE(szLogLine), pszFmt, argptr) == -1)
  40.      szLogLine[ARRSIZE(szLogLine) - 1] = _T('/0');
  41.     char szFullLogLine[1024];
  42.     int iLen = _sntprintf(&szFullLogLine[0], sizeof(szFullLogLine),
  43.      _T("%s: %s/r/n"), CTimeBase::GetCurrentTime().c_str(), pszFmt);
  44.     TRACE(szFullLogLine);
  45.     break;
  46.    }
  47.   case _LOG_LEVEL_RELEASE:
  48.    {
  49.     break;
  50.    }
  51.   default:
  52.    {
  53.     break;
  54.    }
  55.   };
  56.  }
  57. //调用此函数打印LOG 如:PrintLog(_LOG_LEVEL_DEBUG, "%s, %d", "ErrorCode = ", 2000);
  58.  void PrintLog(size_t nLogLevel, char *pszFmt, ...)
  59.  {
  60.   assert(pszFmt != NULL);
  61.   
  62.   va_list argp;
  63.   va_start(argp, pszFmt);
  64.   Log(nLogLevel, pszFmt, argp);
  65.   va_end(argp);
  66.  } 

相关文章推荐

Log打印DLL接口

  • 2017年09月11日 20:51
  • 39.21MB
  • 下载

Log4j打印日志添加请求ID

  • 2017年08月21日 10:10
  • 465KB
  • 下载

如何通过配置log4j.xml来打印指定类或指定级别的日志信息

把指定类的日志信息输出到指定appender里: ============================================================       ...

log4 打印日志文件例子

  • 2012年04月11日 17:01
  • 117KB
  • 下载

使用Log4j2打印Mybatis SQL语句以及结果集

配置log4j2.xml 实现用Log4j2来打印Mybatis的SQL很简单,先配置一个name为consolePrint的附加器,指定输出格式  然后在loggers下配置一个logger,n...

MFC工程项目中打印log日志

  • 2016年02月29日 10:20
  • 134KB
  • 下载

android log打印

  • 2016年02月26日 11:10
  • 1.19MB
  • 下载

在maven web项目中配置log4j打印日志及Mybatis sql语句

1 添加依赖在pom.xml文件的下添加以下log4j依赖: org.slf4j slf4j-api 1.7.5 ...

log4j打印到控制台输出sql语句

  • 2016年06月03日 10:16
  • 1KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:打印LOG
举报原因:
原因补充:

(最多只允许输入30个字)