⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 log.h

📁 特别好玩有启发的东西
💻 H
字号:
/****************************************************************Copyright (c) 金瀚海网络科技有限公司 All rights reserved*文件名称: log.h*模 块 名: 日志类头文件*功能描述: 日志功能接口定义*当前版本: 1.0*作    者: *完成日期: 2007-08-19*修改记录: *  日期			版本    作者        修改描述****************************************************************/#ifndef _LOG_H_#define _LOG_H_#include "define.h"#include "singleton.h"#include <stdio.h>#include <unistd.h>#include <sys/file.h>#include <sys/stat.h>#include <sys/types.h>#include <stdarg.h>//不记日志#define  LOG_NONE			0//记录出错日志#define  LOG_ERROR			1//记录一般性日志#define  LOG_NORMAL			2//记录调试日志#define  LOG_DEBUG			3#define  LOG_FILE_NAME_ERROR	-1#define  LOG_LEVEL_ERROR		-2#define  LOG_MAXSIZE_ERROR		-3#define  LOG_FAIL_OPEN_FILE		-4#define WriteLog(level,fmt,args...) CLog::Instance()->write_log(level,__FILE__,__LINE__,fmt,## args)//如果当前日志级别设置为1,则记录出错日志,不记一般日志和调试日志//如果为3,则要记录所有日志//原则上,如果日志级别为N,则要记录比N小的所有级别的日志//该日志类是一个单件,一个程序对应一个日志class CLog : public Singleton<CLog>{private:		FILE			*m_fp;		//文件描述句柄	int			m_fd;		//文件描述符	int			m_logLevel;	//日志记录级别标记	int			m_nCurSize;	//打开时记录文件的当前大小	std::string	m_szCurFile;//当前文件名,全路径	std::string	m_szBackupFile;	//备份文件名,全路径	int			m_nMaxSize;	//文件的最大大小	std::string	m_levelArr[4];	//级别描述数组	bool			m_bInit;	  //判断是否初始化,如果没有初始化就写日志将会失败	public:		CLog();	int InitLogFile ( const char * pFile, int logLevel, const char * pBackupFile, int nMaxSize );	//这儿没必要实现变参	void write_log(int curLevel,char *file,int line, char *fmt, ...);	void CloseLogFile ();	private:		int  BackupFile ();};#endif //_LOG_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -