Skip to content
Snippets Groups Projects
Verified Commit 40c6e136 authored by Lukas Jezek's avatar Lukas Jezek Committed by Tomas Krizek
Browse files

log: add log functions and LOG_GRP_MODULE group for users's modules

logging
parent 3f255ec6
Branches
Tags
1 merge request!1181Fine grained logging
......@@ -32,6 +32,7 @@ new_read_globals = {
'hour',
'day',
'panic',
'log',
'log_error',
'log_warn',
'log_info',
......
......@@ -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;
......
......@@ -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
......
......@@ -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 },
};
......
......@@ -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)
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment