/* * Copyright (C) <2018> Intel Corporation * SPDX-License-Identifier: BSD-3-Clause */ #include #include #include #include #include "log_sys.h" void debug_log(const int level, const char *func, const int line, ...) { va_list args; char *fmt; char *head; char *msg; if (level > LOG_LEVEL) return; va_start(args, line); fmt = va_arg(args, char *); if (!fmt) return; if (vasprintf(&msg, fmt, args) == -1) return; va_end(args); if (asprintf(&head, "<%-20s%5d>: ", func, line) == -1) { free(msg); return; } sd_journal_print(level, "%s%s", head, msg); free(msg); free(head); }