LingYun IoT Studio NB-IoT research project
guowenxue
2018-11-20 995ca76581e3f4134b1e9f3b2d9b4c3efb0855d4
src/cp_library/cp_logger.h
@@ -11,8 +11,8 @@
 *                 
 ********************************************************************************/
#ifndef __CP_LOG_H
#define __CP_LOG_H
#ifndef __CP_LOGGER_H
#define __CP_LOGGER_H
#include <stdarg.h>
#include <stdio.h>
@@ -35,6 +35,7 @@
#define DEFAULT_LOGFILE             "cp_logger.log"
#define DBG_LOG_FILE                "console"  /*  Debug mode log file is console */ 
#define DEF_LOG_MAXSIZE             1024
#define LOG_ROLLBACK_SIZE           512    /* Default rollback log size  */
#define LOG_ROLLBACK_NONE           0      /* Set rollback size to 0 will not rollback  */
@@ -65,7 +66,7 @@
#define CP_LOGGER_FILE                0<<1
#define CP_LOGGER_LEVEL_OPT           1<<2 /*  The log level is sepcified by the command option */
typedef struct _cp_logger
typedef struct logger_s
{
    unsigned char      flag;  /* This logger pointer is malloc() or passed by argument */
    char               file[FILENAME_LEN];
@@ -73,21 +74,24 @@
    int                size;
    FILE               *fp;
} cp_logger;
} logger_t;
extern char *log_str[];
extern cp_logger *cp_log_init(cp_logger *log, char *filename, int level, int log_size);
extern int  cp_log_open(void);
extern void cp_log_set_time_format(char *time_format);
extern int  cp_log_reopen(void);
extern void cp_log_term(void);
extern void cp_log_raw(const char *fmt, ...);
extern void cp_log(int level, char *fmt, ...);
extern void cp_log_line(int level, char *file, int line, char *fmt, ...);
void cp_log_raw(const char *fmt, ...);
void cp_log(int level, char *fmt, ...);
void cp_log_line(int level, char *file, int line, char *fmt, ...);
void cp_log_set_time_format(char *time_format);
extern logger_t *cp_log_init(logger_t *log, char *filename, int level, int log_size);
extern int  cp_log_open(void);
extern int  cp_log_reopen(void);
extern void cp_log_close(void);
extern void cp_log_term(void);
extern void cp_log_dump(int level, char *buf, int len);
#ifdef LOG_FILE_LINE
#define log_trace(fmt, ...) cp_log_line(LOG_LEVEL_TRACE, __FILE__, __LINE__, fmt, ##__VA_ARGS__)
#define log_info(fmt, ...) cp_log_line(LOG_LEVEL_INFO, __FILE__, __LINE__, fmt, ##__VA_ARGS__)