From 40c6e1369770df4e10787b3fa176309fd09529b4 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Luk=C3=A1=C5=A1=20Je=C5=BEek?= Date: Wed, 21 Jul 2021 11:40:29 +0200 Subject: [PATCH] log: add log functions and LOG_GRP_MODULE group for users's modules logging --- .luacheckrc | 1 + daemon/lua/kres-gen-29.lua | 2 +- daemon/lua/sandbox.lua.in | 4 ++++ lib/log.c | 1 + lib/log.h | 6 ++++++ 5 files changed, 13 insertions(+), 1 deletion(-) diff --git a/.luacheckrc b/.luacheckrc index 8cd2b466d..6248c0094 100644 --- a/.luacheckrc +++ b/.luacheckrc @@ -32,6 +32,7 @@ new_read_globals = { 'hour', 'day', 'panic', + 'log', 'log_error', 'log_warn', 'log_info', diff --git a/daemon/lua/kres-gen-29.lua b/daemon/lua/kres-gen-29.lua index 2b540a95e..73c5c9915 100644 --- a/daemon/lua/kres-gen-29.lua +++ b/daemon/lua/kres-gen-29.lua @@ -307,7 +307,7 @@ struct kr_server_selection { struct local_state *local_state; }; typedef int log_level_t; -enum kr_log_group {LOG_GRP_SYSTEM = 1, LOG_GRP_CACHE, LOG_GRP_IO, LOG_GRP_NETWORK, LOG_GRP_TA, LOG_GRP_TLS, LOG_GRP_GNUTLS, LOG_GRP_TLSCLIENT, LOG_GRP_XDP, LOG_GRP_ZIMPORT, LOG_GRP_ZSCANNER, LOG_GRP_DOH, LOG_GRP_DNSSEC, LOG_GRP_HINT, LOG_GRP_PLAN, LOG_GRP_ITERATOR, LOG_GRP_VALIDATOR, LOG_GRP_RESOLVER, LOG_GRP_SELECTION, LOG_GRP_ZCUT, LOG_GRP_COOKIES, LOG_GRP_STATISTICS, LOG_GRP_REBIND, LOG_GRP_WORKER, LOG_GRP_POLICY, LOG_GRP_TASENTINEL, LOG_GRP_TASIGNALING, LOG_GRP_TAUPDATE, LOG_GRP_DAF, LOG_GRP_DETECTTIMEJUMP, LOG_GRP_DETECTTIMESKEW, LOG_GRP_GRAPHITE, LOG_GRP_PREFILL, LOG_GRP_PRIMING, LOG_GRP_SRVSTALE, LOG_GRP_WATCHDOG, LOG_GRP_NSID, LOG_GRP_DNSTAP, LOG_GRP_TESTS, LOG_GRP_DOTAUTH, LOG_GRP_HTTP, LOG_GRP_CONTROL, LOG_GRP_DEVEL}; +enum kr_log_group {LOG_GRP_SYSTEM = 1, LOG_GRP_CACHE, LOG_GRP_IO, LOG_GRP_NETWORK, LOG_GRP_TA, LOG_GRP_TLS, LOG_GRP_GNUTLS, LOG_GRP_TLSCLIENT, LOG_GRP_XDP, LOG_GRP_ZIMPORT, LOG_GRP_ZSCANNER, LOG_GRP_DOH, LOG_GRP_DNSSEC, LOG_GRP_HINT, LOG_GRP_PLAN, LOG_GRP_ITERATOR, LOG_GRP_VALIDATOR, LOG_GRP_RESOLVER, LOG_GRP_SELECTION, LOG_GRP_ZCUT, LOG_GRP_COOKIES, LOG_GRP_STATISTICS, LOG_GRP_REBIND, LOG_GRP_WORKER, LOG_GRP_POLICY, LOG_GRP_TASENTINEL, LOG_GRP_TASIGNALING, LOG_GRP_TAUPDATE, LOG_GRP_DAF, LOG_GRP_DETECTTIMEJUMP, LOG_GRP_DETECTTIMESKEW, LOG_GRP_GRAPHITE, LOG_GRP_PREFILL, LOG_GRP_PRIMING, LOG_GRP_SRVSTALE, LOG_GRP_WATCHDOG, LOG_GRP_NSID, LOG_GRP_DNSTAP, LOG_GRP_TESTS, LOG_GRP_DOTAUTH, LOG_GRP_HTTP, LOG_GRP_CONTROL, LOG_GRP_MODULE, LOG_GRP_DEVEL}; kr_layer_t kr_layer_t_static; _Bool kr_dbg_assertion_abort; diff --git a/daemon/lua/sandbox.lua.in b/daemon/lua/sandbox.lua.in index 01ae885f1..432099c12 100644 --- a/daemon/lua/sandbox.lua.in +++ b/daemon/lua/sandbox.lua.in @@ -65,6 +65,10 @@ function log_debug(grp, fmt, ...) log_fmt(grp, LOG_DEBUG, fmt, ...) end +function log(fmt, ...) + log_info(ffi.C.LOG_GRP_MODULE, fmt, ...) +end + -- Resolver bindings kres = require('kres') if rawget(kres, 'str2dname') ~= nil then diff --git a/lib/log.c b/lib/log.c index d03158aa3..1d02b2e30 100644 --- a/lib/log.c +++ b/lib/log.c @@ -71,6 +71,7 @@ log_group_names_t log_group_names[] = { GRP_NAME_ITEM(LOG_GRP_DOTAUTH), GRP_NAME_ITEM(LOG_GRP_HTTP), GRP_NAME_ITEM(LOG_GRP_CONTROL), + GRP_NAME_ITEM(LOG_GRP_MODULE), GRP_NAME_ITEM(LOG_GRP_DEVEL), { NULL, -1 }, }; diff --git a/lib/log.h b/lib/log.h index 72e0f5918..9d254084b 100644 --- a/lib/log.h +++ b/lib/log.h @@ -67,6 +67,7 @@ enum kr_log_group { LOG_GRP_DOTAUTH, LOG_GRP_HTTP, LOG_GRP_CONTROL, + LOG_GRP_MODULE, /* ^^ Add new log groups above ^^. */ LOG_GRP_DEVEL, /* Must be last entry in enum! */ }; @@ -118,6 +119,7 @@ typedef struct { #define LOG_GRP_DOTAUTH_TAG "dotaut" #define LOG_GRP_HTTP_TAG "http" #define LOG_GRP_CONTROL_TAG "contrl" +#define LOG_GRP_MODULE_TAG "module" #define LOG_GRP_DEVEL_TAG "devel" KR_EXPORT @@ -175,6 +177,10 @@ void kr_log_init(log_level_t level, log_target_t target); #define kr_log_deprecate(grp, fmt, ...) \ kr_log_fmt(LOG_GRP_ ## grp, LOG_WARNING,SD_JOURNAL_METADATA, \ "[%-6s] deprecation WARNING: " fmt, LOG_GRP_ ## grp ## _TAG, ## __VA_ARGS__) +#define kr_log(fmt, ...) \ + kr_log_fmt(LOG_GRP_MODULE, LOG_INFO, SD_JOURNAL_METADATA, \ + "[%-6s] " fmt, LOG_GRP_MODULE_TAG, ## __VA_ARGS__) + #define KR_LOG_LEVEL_IS(exp) ((kr_log_level >= (exp)) ? true : false) -- 2.47.2