Bladeren bron

[Project] Enable fast debug lookup for some modules

tags/1.7.0
Vsevolod Stakhov 6 jaren geleden
bovenliggende
commit
b9f51206b4

+ 4
- 2
src/libmime/lang_detection.c Bestand weergeven

@@ -56,11 +56,13 @@ struct rspamd_lang_detector {
gsize short_text_limit;
};

#define msg_debug_lang_det(...) rspamd_default_log_function (G_LOG_LEVEL_DEBUG, \
"langdet", task->task_pool->tag.uid, \
#define msg_debug_lang_det(...) rspamd_conditional_debug_fast (NULL, NULL, \
rspamd_langdet_log_id, "langdet", task->task_pool->tag.uid, \
G_STRFUNC, \
__VA_ARGS__)

INIT_LOG_MODULE(langdet)

static guint
rspamd_unigram_hash (gconstpointer key)
{

+ 4
- 2
src/libserver/fuzzy_backend_redis.c Bestand weergeven

@@ -41,11 +41,13 @@
"fuzzy_redis", session->backend->id, \
G_STRFUNC, \
__VA_ARGS__)
#define msg_debug_redis_session(...) rspamd_default_log_function (G_LOG_LEVEL_DEBUG, \
"fuzzy_redis", session->backend->id, \
#define msg_debug_redis_session(...) rspamd_conditional_debug_fast (NULL, NULL, \
rspamd_fuzzy_redis_log_id, "fuzzy_redis", session->backend->id, \
G_STRFUNC, \
__VA_ARGS__)

INIT_LOG_MODULE(fuzzy_redis)

struct rspamd_fuzzy_backend_redis {
struct upstream_list *read_servers;
struct upstream_list *write_servers;

+ 4
- 2
src/libstat/classifiers/lua_classifier.c Bestand weergeven

@@ -39,11 +39,13 @@ static GHashTable *lua_classifiers = NULL;
"luacl", task->task_pool->tag.uid, \
G_STRFUNC, \
__VA_ARGS__)
#define msg_debug_luacl(...) rspamd_default_log_function (G_LOG_LEVEL_DEBUG, \
"luacl", task->task_pool->tag.uid, \
#define msg_debug_luacl(...) rspamd_conditional_debug_fast (NULL, task->from_addr, \
rspamd_luacl_log_id, "luacl", task->task_pool->tag.uid, \
G_STRFUNC, \
__VA_ARGS__)

INIT_LOG_MODULE(luacl)

gboolean
lua_classifier_init (rspamd_mempool_t *pool,
struct rspamd_classifier *cl)

+ 8
- 1
src/libutil/logger.c Bestand weergeven

@@ -115,6 +115,12 @@ static void file_log_function (const gchar *module,
gint log_level, const gchar *message,
gpointer arg);

guint rspamd_task_log_id = (guint)-1;
RSPAMD_CONSTRUCTOR(rspamd_task_log_init)
{
rspamd_task_log_id = rspamd_logger_add_debug_module("task");
}

/**
* Calculate checksum for log line (used for repeating logic)
*/
@@ -1358,6 +1364,7 @@ rspamd_logger_add_debug_module (const gchar *mname)
m->mname = g_strdup (mname);
m->id = rspamd_logger_allocate_mod_bit ();
clrbit (log_modules->bitset, m->id);
g_hash_table_insert (log_modules->modules, m->mname, m);
}

return m->id;
@@ -1383,7 +1390,7 @@ rspamd_logger_configure_modules (GHashTable *mods_enabled)

while (g_hash_table_iter_next (&it, &k, &v)) {
id = rspamd_logger_add_debug_module ((const gchar *)k);
msg_info ("enable debugging for module %s (%d)", (const gchar *)k, id);
setbit (log_modules->bitset, id);
}
}

+ 19
- 18
src/libutil/logger.h Bestand weergeven

@@ -106,9 +106,9 @@ guint rspamd_logger_add_debug_module (const gchar *mod);
* Macro to use for faster debug modules
*/
#define INIT_LOG_MODULE(mname) \
static guint mname##_log_id = (guint)-1; \
static RSPAMD_CONSTRUCTOR(mname##_log_init) { \
mname##_log_id = rspamd_logger_add_debug_module(#mname); \
static guint rspamd_##mname##_log_id = (guint)-1; \
RSPAMD_CONSTRUCTOR(rspamd_##mname##_log_init) { \
rspamd_##mname##_log_id = rspamd_logger_add_debug_module(#mname); \
}

void rspamd_logger_configure_modules (GHashTable *mods_enabled);
@@ -185,6 +185,8 @@ ucl_object_t * rspamd_log_errorbuf_export (const rspamd_logger_t *logger);

/* Typical functions */

extern guint rspamd_task_log_id;

/* Logging in postfix style */
#define msg_err(...) rspamd_default_log_function (G_LOG_LEVEL_CRITICAL, \
NULL, NULL, \
@@ -202,9 +204,10 @@ ucl_object_t * rspamd_log_errorbuf_export (const rspamd_logger_t *logger);
NULL, NULL, \
G_STRFUNC, \
__VA_ARGS__)
#define debug_task(...) rspamd_conditional_debug (NULL, \

#define debug_task(...) rspamd_conditional_debug_fast (NULL, \
task->from_addr, \
"task", task->task_pool->tag.uid, \
rspamd_task_log_id, "task", task->task_pool->tag.uid, \
G_STRFUNC, \
__VA_ARGS__)

@@ -221,8 +224,8 @@ ucl_object_t * rspamd_log_errorbuf_export (const rspamd_logger_t *logger);
task->task_pool->tag.tagname, task->task_pool->tag.uid, \
G_STRFUNC, \
__VA_ARGS__)
#define msg_debug_task(...) rspamd_default_log_function (G_LOG_LEVEL_DEBUG, \
"task", task->task_pool->tag.uid, \
#define msg_debug_task(...) rspamd_conditional_debug_fast (NULL, task->from_addr, \
rspamd_task_log_id, "task", task->task_pool->tag.uid, \
G_STRFUNC, \
__VA_ARGS__)
#define msg_err_task_encrypted(...) rspamd_default_log_function (G_LOG_LEVEL_CRITICAL|RSPAMD_LOG_ENCRYPTED, \
@@ -237,10 +240,6 @@ ucl_object_t * rspamd_log_errorbuf_export (const rspamd_logger_t *logger);
task->task_pool->tag.tagname, task->task_pool->tag.uid, \
G_STRFUNC, \
__VA_ARGS__)
#define msg_debug_task_encrypted(...) rspamd_default_log_function (G_LOG_LEVEL_DEBUG|RSPAMD_LOG_ENCRYPTED, \
task->task_pool->tag.tagname, task->task_pool->tag.uid, \
G_STRFUNC, \
__VA_ARGS__)
/* Check for NULL pointer first */
#define msg_err_task_check(...) rspamd_default_log_function (G_LOG_LEVEL_CRITICAL, \
task ? task->task_pool->tag.tagname : NULL, task ? task->task_pool->tag.uid : NULL, \
@@ -254,8 +253,9 @@ ucl_object_t * rspamd_log_errorbuf_export (const rspamd_logger_t *logger);
task ? task->task_pool->tag.tagname : NULL, task ? task->task_pool->tag.uid : NULL, \
G_STRFUNC, \
__VA_ARGS__)
#define msg_debug_task_check(...) rspamd_default_log_function (G_LOG_LEVEL_DEBUG, \
task ? task->task_pool->tag.tagname : NULL, task ? task->task_pool->tag.uid : NULL, \
#define msg_debug_task_check(...) rspamd_conditional_debug_fast (NULL, \
task ? task->from_addr : NULL, \
rspamd_task_log_id, "task", task ? task->task_pool->tag.uid : NULL, \
G_STRFUNC, \
__VA_ARGS__)

@@ -272,7 +272,7 @@ ucl_object_t * rspamd_log_errorbuf_export (const rspamd_logger_t *logger);
pool->tag.tagname, pool->tag.uid, \
G_STRFUNC, \
__VA_ARGS__)
#define msg_debug_pool(...) rspamd_default_log_function (G_LOG_LEVEL_DEBUG, \
#define msg_debug_pool(...) rspamd_conditional_debug (NULL, NULL, \
pool->tag.tagname, pool->tag.uid, \
G_STRFUNC, \
__VA_ARGS__)
@@ -285,12 +285,13 @@ ucl_object_t * rspamd_log_errorbuf_export (const rspamd_logger_t *logger);
pool ? pool->tag.tagname : NULL, pool ? pool->tag.uid : NULL, \
G_STRFUNC, \
__VA_ARGS__)
#define msg_info_pool_check(...) rspamd_default_log_function (G_LOG_LEVEL_INFO, \
#define msg_info_pool_check(...) rspamd_conditional_debug (NULL, NULL, \
G_LOG_LEVEL_INFO, \
pool ? pool->tag.tagname : NULL, pool ? pool->tag.uid : NULL, \
G_STRFUNC, \
__VA_ARGS__)
#define msg_debug_pool_check(...) rspamd_default_log_function (G_LOG_LEVEL_DEBUG, \
#define msg_debug_pool_check(...) rspamd_conditional_debug (NULL, NULL, \
pool ? pool->tag.tagname : NULL, pool ? pool->tag.uid : NULL, \
G_STRFUNC, \
__VA_ARGS__)
G_STRFUNC, \
__VA_ARGS__)
#endif

+ 6
- 0
src/libutil/map.c Bestand weergeven

@@ -66,6 +66,12 @@ struct rspamd_http_map_cached_cbdata {
time_t last_checked;
};

guint rspamd_map_log_id = (guint)-1;
RSPAMD_CONSTRUCTOR(rspamd_map_log_init)
{
rspamd_map_log_id = rspamd_logger_add_debug_module("map");
}

/**
* Write HTTP request
*/

+ 3
- 3
src/libutil/map_private.h Bestand weergeven

@@ -24,7 +24,7 @@
#include "ref.h"

typedef void (*rspamd_map_dtor) (gpointer p);
extern guint rspamd_map_log_id;
#define msg_err_map(...) rspamd_default_log_function (G_LOG_LEVEL_CRITICAL, \
"map", map->tag, \
G_STRFUNC, \
@@ -37,8 +37,8 @@ typedef void (*rspamd_map_dtor) (gpointer p);
"map", map->tag, \
G_STRFUNC, \
__VA_ARGS__)
#define msg_debug_map(...) rspamd_default_log_function (G_LOG_LEVEL_DEBUG, \
"map", map->tag, \
#define msg_debug_map(...) rspamd_conditional_debug_fast (NULL, NULL, \
rspamd_map_log_id, "map", map->tag, \
G_STRFUNC, \
__VA_ARGS__)


+ 4
- 2
src/libutil/radix.c Bestand weergeven

@@ -31,11 +31,13 @@
"radix", tree->pool->tag.uid, \
G_STRFUNC, \
__VA_ARGS__)
#define msg_debug_radix(...) rspamd_default_log_function (G_LOG_LEVEL_DEBUG, \
"radix", tree->pool->tag.uid, \
#define msg_debug_radix(...) rspamd_conditional_debug_fast (NULL, NULL, \
rspamd_radix_log_id, "radix", tree->pool->tag.uid, \
G_STRFUNC, \
__VA_ARGS__)

INIT_LOG_MODULE(radix)

struct radix_tree_compressed {
rspamd_mempool_t *pool;
size_t size;

Laden…
Annuleren
Opslaan