blob: 31ab3856ea7700a14fffdbf4055bc75c4a0a2e37 [file] [log] [blame]
b.liu4e243dc2023-11-27 11:20:00 +08001#ifndef __LIBLOG_H__
2#define __LIBLOG_H__
3
4#include <unistd.h>
xf.li44e08692024-01-30 01:54:44 -08005#include "mbtk_log.h"
b.liu4e243dc2023-11-27 11:20:00 +08006
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11typedef enum
12{
13 LOG_UNSET = -1,
14 LOG_VERBOSE = 0,
15 LOG_ERROR,
16 LOG_WARNING,
17 LOG_INFO,
18 LOG_DEBUG,
19 LOG_LEVEL_MAX
20}log_level_enum;
21
22void lynq_log_global_output(log_level_enum Level,const char *format,...);
23void lynq_log_configuration_init(const char *log_name);
24const char* lynq_read_log_version();
25
26//log level api
27int lynq_set_log_level(const char * module_name, log_level_enum level);
28int lynq_get_log_level(const char * module_name, log_level_enum *level);
29int lynq_set_special_log_level(const char * exe_name, const char * module_name, log_level_enum level);
30int lynq_get_special_log_level(const char * exe_name, const char * module_name, log_level_enum *level);
31int lynq_notify_recalc_log_level(pid_t pid);
32
33#ifdef __cplusplus
34}
35#endif
xf.li44e08692024-01-30 01:54:44 -080036#define lynq_log_verbose(fmt, args...) \
37 do{ \
38 char *file_ptr_1001 = __FILE__; \
39 char *ptr_1001 = file_ptr_1001 + strlen(file_ptr_1001) - 1; \
40 char line_1001[10] = {0}; \
41 sprintf(line_1001, "%d", __LINE__); \
42 while(ptr_1001 >= file_ptr_1001 && *ptr_1001){ \
43 if(*ptr_1001 == '/') \
44 break; \
45 ptr_1001--; \
46 } \
47 mbtk_log(LOG_VERBOSE_LEVEL, "%s#%s: " fmt, ptr_1001 + 1, line_1001, ##args); \
48 } while(0)
b.liu4e243dc2023-11-27 11:20:00 +080049
xf.li44e08692024-01-30 01:54:44 -080050#define lynq_log_error(fmt, args...) \
51 do{ \
52 char *file_ptr_1001 = __FILE__; \
53 char *ptr_1001 = file_ptr_1001 + strlen(file_ptr_1001) - 1; \
54 char line_1001[10] = {0}; \
55 sprintf(line_1001, "%d", __LINE__); \
56 while(ptr_1001 >= file_ptr_1001 && *ptr_1001){ \
57 if(*ptr_1001 == '/') \
58 break; \
59 ptr_1001--; \
60 } \
61 mbtk_log(LOG_ERR_LEVEL, "%s#%s: " fmt, ptr_1001 + 1, line_1001, ##args); \
62 } while(0)
63
64#define lynq_log_warning(fmt, args...) \
65 do{ \
66 char *file_ptr_1001 = __FILE__; \
67 char *ptr_1001 = file_ptr_1001 + strlen(file_ptr_1001) - 1; \
68 char line_1001[10] = {0}; \
69 sprintf(line_1001, "%d", __LINE__); \
70 while(ptr_1001 >= file_ptr_1001 && *ptr_1001){ \
71 if(*ptr_1001 == '/') \
72 break; \
73 ptr_1001--; \
74 } \
75 mbtk_log(LOG_WARN_LEVEL, "%s#%s: " fmt, ptr_1001 + 1, line_1001, ##args); \
76 } while(0)
77
78#define lynq_log_info(fmt, args...) \
79 do{ \
80 char *file_ptr_1001 = __FILE__; \
81 char *ptr_1001 = file_ptr_1001 + strlen(file_ptr_1001) - 1; \
82 char line_1001[10] = {0}; \
83 sprintf(line_1001, "%d", __LINE__); \
84 while(ptr_1001 >= file_ptr_1001 && *ptr_1001){ \
85 if(*ptr_1001 == '/') \
86 break; \
87 ptr_1001--; \
88 } \
89 mbtk_log(LOG_INFO_LEVEL, "%s#%s: " fmt, ptr_1001 + 1, line_1001, ##args); \
90 } while(0)
91
92#define lynq_log_debug(fmt, args...) \
93 do{ \
94 char *file_ptr_1001 = __FILE__; \
95 char *ptr_1001 = file_ptr_1001 + strlen(file_ptr_1001) - 1; \
96 char line_1001[10] = {0}; \
97 sprintf(line_1001, "%d", __LINE__); \
98 while(ptr_1001 >= file_ptr_1001 && *ptr_1001){ \
99 if(*ptr_1001 == '/') \
100 break; \
101 ptr_1001--; \
102 } \
103 mbtk_log(LOG_DEBUG_LEVEL, "%s#%s: " fmt "\n", ptr_1001 + 1, line_1001, ##args); \
104 } while(0)
105
106#define LYVERBLOG(fmt, args...) \
107 do{ \
108 char *file_ptr_1001 = __FILE__; \
109 char *ptr_1001 = file_ptr_1001 + strlen(file_ptr_1001) - 1; \
110 char line_1001[10] = {0}; \
111 sprintf(line_1001, "%d", __LINE__); \
112 while(ptr_1001 >= file_ptr_1001 && *ptr_1001){ \
113 if(*ptr_1001 == '/') \
114 break; \
115 ptr_1001--; \
116 } \
117 mbtk_log(LOG_VERBOSE_LEVEL, "%s#%s: " fmt, ptr_1001 + 1, line_1001, ##args); \
118 } while(0)
119
120#define LYERRLOG(fmt, args...) \
121 do{ \
122 char *file_ptr_1001 = __FILE__; \
123 char *ptr_1001 = file_ptr_1001 + strlen(file_ptr_1001) - 1; \
124 char line_1001[10] = {0}; \
125 sprintf(line_1001, "%d", __LINE__); \
126 while(ptr_1001 >= file_ptr_1001 && *ptr_1001){ \
127 if(*ptr_1001 == '/') \
128 break; \
129 ptr_1001--; \
130 } \
131 mbtk_log(LOG_ERR_LEVEL, "%s#%s: " fmt, ptr_1001 + 1, line_1001, ##args); \
132 } while(0)
133
134#define LYWARNLOG(fmt, args...) \
135 do{ \
136 char *file_ptr_1001 = __FILE__; \
137 char *ptr_1001 = file_ptr_1001 + strlen(file_ptr_1001) - 1; \
138 char line_1001[10] = {0}; \
139 sprintf(line_1001, "%d", __LINE__); \
140 while(ptr_1001 >= file_ptr_1001 && *ptr_1001){ \
141 if(*ptr_1001 == '/') \
142 break; \
143 ptr_1001--; \
144 } \
145 mbtk_log(LOG_WARN_LEVEL, "%s#%s: " fmt, ptr_1001 + 1, line_1001, ##args); \
146 } while(0)
147
148#define LYINFLOG(fmt, args...) \
149 do{ \
150 char *file_ptr_1001 = __FILE__; \
151 char *ptr_1001 = file_ptr_1001 + strlen(file_ptr_1001) - 1; \
152 char line_1001[10] = {0}; \
153 sprintf(line_1001, "%d", __LINE__); \
154 while(ptr_1001 >= file_ptr_1001 && *ptr_1001){ \
155 if(*ptr_1001 == '/') \
156 break; \
157 ptr_1001--; \
158 } \
159 mbtk_log(LOG_INFO_LEVEL, "%s#%s: " fmt, ptr_1001 + 1, line_1001, ##args); \
160 } while(0)
161
162#define LYDBGLOG(fmt, args...) \
163 do{ \
164 char *file_ptr_1001 = __FILE__; \
165 char *ptr_1001 = file_ptr_1001 + strlen(file_ptr_1001) - 1; \
166 char line_1001[10] = {0}; \
167 sprintf(line_1001, "%d", __LINE__); \
168 while(ptr_1001 >= file_ptr_1001 && *ptr_1001){ \
169 if(*ptr_1001 == '/') \
170 break; \
171 ptr_1001--; \
172 } \
173 mbtk_log(LOG_DEBUG_LEVEL, "%s#%s: " fmt "\n", ptr_1001 + 1, line_1001, ##args); \
174 } while(0)
b.liu4e243dc2023-11-27 11:20:00 +0800175#endif //__LOG_H__