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

📄 aplog.h

📁 一个很好的记日志的程序
💻 H
📖 第 1 页 / 共 2 页
字号:
#ifndef _HEAD_APLOG_69E74D13_2F1D009B_17D8494C_H
#define _HEAD_APLOG_69E74D13_2F1D009B_17D8494C_H

#define LGWRFLUSHNOW

extern void *__lgwr__handle;

/* Define LGWR-relative macros.
 */
#define LGWROPEN(file, level, sz) __lgwr__handle = lgwr_open(file, level, sz)
#define LGWRCLOSE()		  lgwr_close(__lgwr__handle)
#define SETLGWRFILE(newfile)	  lgwr_set_file(__lgwr__handle, newfile, 0, 1)
#define SETLGWRLEVEL(newlevel)	  lgwr_set_level(__lgwr__handle, newlevel)
#define SETLGWRSIZE(newsize)	  lgwr_set_size(__lgwr__handle, newsize)

#define LGWRFLUSHNOW

#define LGWRLEVELNOLEVEL  	-1
#define LGWRLEVELEMERGENCY	0
#define LGWRLEVELALERT		1
#define LGWRLEVELCRITICAL	2
#define LGWRLEVELERROR		3
#define LGWRLEVELWARN		4
#define LGWRLEVELNOTICE		5
#define LGWRLEVELINFO		6
#define LGWRLEVELDEBUG		7
#define LGWRLEVELS		8

#define LGWRSTREMERGENCY	"<0>"
#define LGWRSTRALERT		"<1>"
#define LGWRSTRCRITICAL		"<2>"
#define LGWRSTRERROR		"<3>"
#define LGWRSTRWARN		"<4>"
#define LGWRSTRNOTICE		"<5>"
#define LGWRSTRINFO		"<6>"
#define LGWRSTRDEBUG		"<7>"

#ifdef OS_LINUX

#define LGWR(data,len,fmt,arg...)	\
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			fmt,##arg)
#define LGWREMERGENCY(data,len,fmt,arg...) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTREMERGENCY fmt,##arg)
#define LGWRALERT(data,len,fmt,arg...) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRALERT fmt,##arg)
#define LGWRCRITICAL(data,len,fmt,arg...) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRCRITICAL fmt,##arg)
#define LGWRERROR(data,len,fmt,arg...) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRERROR fmt,##arg)
#define LGWRWARN(data,len,fmt,arg...) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRWARN fmt,##arg)
#define LGWRNOTICE(data,len,fmt,arg...) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRNOTICE fmt,##arg)
#define LGWRINFO(data,len,fmt,arg...) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRINFO fmt,##arg)
#ifdef NLGWR 
#define LGWRDEBUG(data,len,fmt,arg...)     do { } while (0)
#else
#define LGWRDEBUG(data,len,fmt,arg...) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRDEBUG fmt,##arg)
#endif	/* #ifdef NLGWR */

/* I really do NOT like the definitions below. But I have no choice
 * because some C/C++ compilers do not support the ##arg grammer, like
 * SUN Workshop C/C++.
 */
#else

#define LGWR(data,len,msg)	\
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__,msg)
#define LGWREMERGENCY(data,len,msg) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__,LGWRSTREMERGENCY msg)
#define LGWRALERT(data,len,msg) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__,LGWRSTRALERT msg)
#define LGWRCRITICAL(data,len,msg) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__,LGWRSTRCRITICAL msg)
#define LGWRERROR(data,len,msg) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__,LGWRSTRERROR msg)
#define LGWRWARN(data,len,msg) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__,LGWRSTRWARN msg)
#define LGWRNOTICE(data,len,msg) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__,LGWRSTRNOTICE msg)
#define LGWRINFO(data,len,msg) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__,LGWRSTRINFO msg)
#ifdef NLGWR 
#define LGWRDEBUG(data,len,msg)     do { } while (0)
#else
#define LGWRDEBUG(data,len,msg) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__,LGWRSTRDEBUG msg)
#endif	/* #ifdef NLGWR */

#endif  /* #ifdef OS_LINUX */

#define LGWR1(data,len,fmt,a)	\
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, fmt,a)
#define LGWR2(data,len,fmt,a,b)	\
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, fmt,a,b)
#define LGWR3(data,len,fmt,a,b,c)	\
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, fmt,a,b,c)
#define LGWR4(data,len,fmt,a,b,c,d)	\
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, fmt,a,b,c,d)
#define LGWR5(data,len,fmt,a,b,c,d,e)	\
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, fmt,a,b,c,d,e)
#define LGWR6(data,len,fmt,a,b,c,d,e,f)	\
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, fmt,a,b,c,d,e,f)
#define LGWR7(data,len,fmt,a,b,c,d,e,f,g)	\
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, fmt,a,b,c,d,e,f,g)

#define LGWREMERGENCY1(data,len,fmt,a) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTREMERGENCY fmt,a)
#define LGWREMERGENCY2(data,len,fmt,a,b) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTREMERGENCY fmt,a,b)
#define LGWREMERGENCY3(data,len,fmt,a,b,c) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTREMERGENCY fmt,a,b,c)
#define LGWREMERGENCY4(data,len,fmt,a,b,c,d) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTREMERGENCY fmt,a,b,c,d)
#define LGWREMERGENCY5(data,len,fmt,a,b,c,d,e) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTREMERGENCY fmt,a,b,c,d,e)
#define LGWREMERGENCY6(data,len,fmt,a,b,c,d,e,f) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTREMERGENCY fmt,a,b,c,d,e,f)
#define LGWREMERGENCY7(data,len,fmt,a,b,c,d,e,f,g) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTREMERGENCY fmt,a,b,c,d,e,f,g)

#define LGWRALERT1(data,len,fmt,a) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRALERT fmt,a)
#define LGWRALERT2(data,len,fmt,a,b) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRALERT fmt,a,b)
#define LGWRALERT3(data,len,fmt,a,b,c) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRALERT fmt,a,b,c)
#define LGWRALERT4(data,len,fmt,a,b,c,d) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRALERT fmt,a,b,c,d)
#define LGWRALERT5(data,len,fmt,a,b,c,d,e) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRALERT fmt,a,b,c,d,e)
#define LGWRALERT6(data,len,fmt,a,b,c,d,e,f) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRALERT fmt,a,b,c,d,e,f)
#define LGWRALERT7(data,len,fmt,a,b,c,d,e,f,g) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRALERT fmt,a,b,c,d,e,f,g)

#define LGWRCRITICAL1(data,len,fmt,a) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRCRITICAL fmt,a)
#define LGWRCRITICAL2(data,len,fmt,a,b) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRCRITICAL fmt,a,b)
#define LGWRCRITICAL3(data,len,fmt,a,b,c) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRCRITICAL fmt,a,b,c)
#define LGWRCRITICAL4(data,len,fmt,a,b,c,d) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRCRITICAL fmt,a,b,c,d)
#define LGWRCRITICAL5(data,len,fmt,a,b,c,d,e) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRCRITICAL fmt,a,b,c,d,e)
#define LGWRCRITICAL6(data,len,fmt,a,b,c,d,e,f) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRCRITICAL fmt,a,b,c,d,e,f)
#define LGWRCRITICAL7(data,len,fmt,a,b,c,d,e,f,g) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRCRITICAL fmt,a,b,c,d,e,f,g)

#define LGWRERROR1(data,len,fmt,a) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRERROR fmt,a)
#define LGWRERROR2(data,len,fmt,a,b) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRERROR fmt,a,b)
#define LGWRERROR3(data,len,fmt,a,b,c) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRERROR fmt,a,b,c)
#define LGWRERROR4(data,len,fmt,a,b,c,d) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRERROR fmt,a,b,c,d)
#define LGWRERROR5(data,len,fmt,a,b,c,d,e) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRERROR fmt,a,b,c,d,e)
#define LGWRERROR6(data,len,fmt,a,b,c,d,e,f) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRERROR fmt,a,b,c,d,e,f)
#define LGWRERROR7(data,len,fmt,a,b,c,d,e,f,g) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRERROR fmt,a,b,c,d,e,f,g)

#define LGWRWARN1(data,len,fmt,a) \
	lgwr_prt(__lgwr__handle,data,len,__FILE__,__LINE__, \
			LGWRSTRWARN fmt,a)

⌨️ 快捷键说明

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