diff options
author | cotox <39076296+cotox@users.noreply.github.com> | 2018-05-21 17:39:36 +0000 |
---|---|---|
committer | iphydf <iphydf@users.noreply.github.com> | 2018-08-30 22:44:18 +0000 |
commit | deb82006e5532693c07726e2eaedcc38c7bc050d (patch) | |
tree | 1337f000bfda1d101dfd91763c9b98d0600d4328 | |
parent | 36f0caaf072128623a4c70e6a614721249bb4c6b (diff) |
Feature bootstrap trace/debug log output
Don't know why codes with macro dosen't work.
As it's only a few expensive, just code it without macro for now.
\#if (MIN_LOGGER_LEVEL == LOG_TRACE) || (MIN_LOGGER_LEVEL == LOG_DEBUG)
fprintf(stderr, "[%s] %s:%d(%s) %s\n", strlevel, file, line, func, message);
\#endif
-rw-r--r-- | other/DHT_bootstrap.c | 39 | ||||
-rw-r--r-- | other/bootstrap_daemon/src/tox-bootstrapd.c | 39 |
2 files changed, 78 insertions, 0 deletions
diff --git a/other/DHT_bootstrap.c b/other/DHT_bootstrap.c index ddec0d7b..637cb442 100644 --- a/other/DHT_bootstrap.c +++ b/other/DHT_bootstrap.c | |||
@@ -94,6 +94,40 @@ static void manage_keys(DHT *dht) | |||
94 | fclose(keys_file); | 94 | fclose(keys_file); |
95 | } | 95 | } |
96 | 96 | ||
97 | static void print_log(void *context, Logger_Level level, const char *file, int line, | ||
98 | const char *func, const char *message, void *userdata) | ||
99 | { | ||
100 | char *strlevel; | ||
101 | |||
102 | switch (level) { | ||
103 | case LOGGER_LEVEL_TRACE: | ||
104 | strlevel = "TRACE"; | ||
105 | break; | ||
106 | |||
107 | case LOGGER_LEVEL_DEBUG: | ||
108 | strlevel = "DEBUG"; | ||
109 | break; | ||
110 | |||
111 | case LOGGER_LEVEL_INFO: | ||
112 | strlevel = "INFO"; | ||
113 | break; | ||
114 | |||
115 | case LOGGER_LEVEL_WARNING: | ||
116 | strlevel = "WARNING"; | ||
117 | break; | ||
118 | |||
119 | case LOGGER_LEVEL_ERROR: | ||
120 | strlevel = "ERROR"; | ||
121 | break; | ||
122 | |||
123 | default: | ||
124 | strlevel = "<unknown>"; | ||
125 | break; | ||
126 | } | ||
127 | |||
128 | fprintf(stderr, "[%s] %s:%d(%s) %s\n", strlevel, file, line, func, message); | ||
129 | } | ||
130 | |||
97 | int main(int argc, char *argv[]) | 131 | int main(int argc, char *argv[]) |
98 | { | 132 | { |
99 | if (argc == 2 && !tox_strncasecmp(argv[1], "-h", 3)) { | 133 | if (argc == 2 && !tox_strncasecmp(argv[1], "-h", 3)) { |
@@ -116,6 +150,11 @@ int main(int argc, char *argv[]) | |||
116 | ip_init(&ip, ipv6enabled); | 150 | ip_init(&ip, ipv6enabled); |
117 | 151 | ||
118 | Logger *logger = logger_new(); | 152 | Logger *logger = logger_new(); |
153 | |||
154 | if (MIN_LOGGER_LEVEL == LOGGER_LEVEL_TRACE || MIN_LOGGER_LEVEL == LOGGER_LEVEL_DEBUG) { | ||
155 | logger_callback_log(logger, print_log, nullptr, nullptr); | ||
156 | } | ||
157 | |||
119 | Mono_Time *mono_time = mono_time_new(); | 158 | Mono_Time *mono_time = mono_time_new(); |
120 | DHT *dht = new_dht(logger, mono_time, new_networking(logger, ip, PORT), true); | 159 | DHT *dht = new_dht(logger, mono_time, new_networking(logger, ip, PORT), true); |
121 | Onion *onion = new_onion(mono_time, dht); | 160 | Onion *onion = new_onion(mono_time, dht); |
diff --git a/other/bootstrap_daemon/src/tox-bootstrapd.c b/other/bootstrap_daemon/src/tox-bootstrapd.c index 0c18e05a..45c378f6 100644 --- a/other/bootstrap_daemon/src/tox-bootstrapd.c +++ b/other/bootstrap_daemon/src/tox-bootstrapd.c | |||
@@ -178,6 +178,44 @@ static void daemonize(LOG_BACKEND log_backend, char *pid_file_path) | |||
178 | } | 178 | } |
179 | } | 179 | } |
180 | 180 | ||
181 | void print_log(void *context, LOGGER_LEVEL level, const char *file, int line, | ||
182 | const char *func, const char *message, void *userdata) | ||
183 | { | ||
184 | if (MIN_LOGGER_LEVEL != LOG_TRACE && MIN_LOGGER_LEVEL != LOG_DEBUG) { | ||
185 | return; | ||
186 | } | ||
187 | |||
188 | char *strlevel; | ||
189 | |||
190 | switch (level) { | ||
191 | case LOG_TRACE: | ||
192 | strlevel = "TRACE"; | ||
193 | break; | ||
194 | |||
195 | case LOG_DEBUG: | ||
196 | strlevel = "DEBUG"; | ||
197 | break; | ||
198 | |||
199 | case LOG_INFO: | ||
200 | strlevel = "INFO"; | ||
201 | break; | ||
202 | |||
203 | case LOG_WARNING: | ||
204 | strlevel = "WARNING"; | ||
205 | break; | ||
206 | |||
207 | case LOG_ERROR: | ||
208 | strlevel = "ERROR"; | ||
209 | break; | ||
210 | |||
211 | default: | ||
212 | strlevel = "<unknown>"; | ||
213 | break; | ||
214 | } | ||
215 | |||
216 | fprintf(stderr, "[%s] %s:%d(%s) %s\n", strlevel, file, line, func, message); | ||
217 | } | ||
218 | |||
181 | int main(int argc, char *argv[]) | 219 | int main(int argc, char *argv[]) |
182 | { | 220 | { |
183 | umask(077); | 221 | umask(077); |
@@ -231,6 +269,7 @@ int main(int argc, char *argv[]) | |||
231 | ip_init(&ip, enable_ipv6); | 269 | ip_init(&ip, enable_ipv6); |
232 | 270 | ||
233 | Logger *logger = logger_new(); | 271 | Logger *logger = logger_new(); |
272 | logger_callback_log(logger, print_log, nullptr, nullptr); | ||
234 | 273 | ||
235 | Networking_Core *net = new_networking(logger, ip, port); | 274 | Networking_Core *net = new_networking(logger, ip, port); |
236 | 275 | ||