Use our own logging facility to log toxcore's logs

This commit is contained in:
Maxim Biro 2018-06-28 21:01:13 -04:00 committed by iphydf
parent deb82006e5
commit 2e4cae692e
No known key found for this signature in database
GPG Key ID: 3855DBA2D74403C9
2 changed files with 22 additions and 21 deletions

View File

@ -97,7 +97,7 @@ static void manage_keys(DHT *dht)
static void print_log(void *context, Logger_Level level, const char *file, int line, static void print_log(void *context, Logger_Level level, const char *file, int line,
const char *func, const char *message, void *userdata) const char *func, const char *message, void *userdata)
{ {
char *strlevel; const char *strlevel;
switch (level) { switch (level) {
case LOGGER_LEVEL_TRACE: case LOGGER_LEVEL_TRACE:

View File

@ -178,42 +178,40 @@ static void daemonize(LOG_BACKEND log_backend, char *pid_file_path)
} }
} }
void print_log(void *context, LOGGER_LEVEL level, const char *file, int line, // Logs toxcore logger message using our logger facility
const char *func, const char *message, void *userdata)
{
if (MIN_LOGGER_LEVEL != LOG_TRACE && MIN_LOGGER_LEVEL != LOG_DEBUG) {
return;
}
char *strlevel; static void toxcore_logger_callback(void *context, Logger_Level level, const char *file, int line,
const char *func, const char *message, void *userdata)
{
LOG_LEVEL log_level;
switch (level) { switch (level) {
case LOG_TRACE: case LOGGER_LEVEL_TRACE:
strlevel = "TRACE"; log_level = LOG_LEVEL_INFO;
break; break;
case LOG_DEBUG: case LOGGER_LEVEL_DEBUG:
strlevel = "DEBUG"; log_level = LOG_LEVEL_INFO;
break; break;
case LOG_INFO: case LOGGER_LEVEL_INFO:
strlevel = "INFO"; log_level = LOG_LEVEL_INFO;
break; break;
case LOG_WARNING: case LOGGER_LEVEL_WARNING:
strlevel = "WARNING"; log_level = LOG_LEVEL_WARNING;
break; break;
case LOG_ERROR: case LOGGER_LEVEL_ERROR:
strlevel = "ERROR"; log_level = LOG_LEVEL_ERROR;
break; break;
default: default:
strlevel = "<unknown>"; log_level = LOG_LEVEL_INFO;
break; break;
} }
fprintf(stderr, "[%s] %s:%d(%s) %s\n", strlevel, file, line, func, message); log_write(log_level, "%s:%d(%s) %s\n", file, line, func, message);
} }
int main(int argc, char *argv[]) int main(int argc, char *argv[])
@ -269,7 +267,10 @@ int main(int argc, char *argv[])
ip_init(&ip, enable_ipv6); ip_init(&ip, enable_ipv6);
Logger *logger = logger_new(); Logger *logger = logger_new();
logger_callback_log(logger, print_log, nullptr, nullptr);
if (MIN_LOGGER_LEVEL == LOGGER_LEVEL_TRACE || MIN_LOGGER_LEVEL == LOGGER_LEVEL_DEBUG) {
logger_callback_log(logger, toxcore_logger_callback, nullptr, nullptr);
}
Networking_Core *net = new_networking(logger, ip, port); Networking_Core *net = new_networking(logger, ip, port);