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

📄 log.h

📁 这是基于C语言开发的分布式搜索源代码
💻 H
字号:
#include <stdio.h>#include <stdlib.h>#include <stdarg.h>#include <stdarg.h>#include <unistd.h>#include <string.h>#include <errno.h>#include <sys/time.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <pthread.h>#ifndef _LOG_H#define _LOG_H#ifdef __cplusplusextern "C" {#endif#ifndef _TYPEDEF_LOG#define _TYPEDEF_LOG#define LOG_FILENAME_LIMIT  	1024#define LOG_LINE_LIMIT  	8192#define __DEBUG__		0#define	__WARN__ 		1#define	__ERROR__ 		2#define	__FATAL__ 		3static char *_log_level_s[] = {"DEBUG", "WARN", "ERROR", "FATAL"};static char *ymonths[]= {        "Jan", "Feb", "Mar",        "Apr", "May", "Jun",        "Jul", "Aug", "Sep",        "Oct", "Nov", "Dec"};typedef struct _LOG{	char file[LOG_FILENAME_LIMIT];	int fd ;	pthread_mutex_t mutex;		void (*add)(struct _LOG *, char *, int, const char *, int, char *format, ...);			void (*close)(struct _LOG * );}LOG;/* Initialize LOG */LOG *log_init(char *logfile);#endif/* Add log */void log_add(LOG *, char *, int, const char *, int, char *format,...);/* Close log */void log_close(LOG *);#define DEBUG_LOG(log, format...)if(log){log->add(log, __FILE__, __LINE__, __func__, __DEBUG__,format);}#define WARN_LOG(log, format...)if(log){log->add(log, __FILE__, __LINE__, __func__, __WARN__,format);}#define ERROR_LOG(log, format...)if(log){log->add(log, __FILE__, __LINE__, __func__,  __ERROR__,format);}#define FATAL_LOG(log, format...)if(log){log->add(log, __FILE__, __LINE__, __func__, __FATAL__,format);}#ifdef __cplusplus }#endif#endif

⌨️ 快捷键说明

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