QB_LOG_CALLSITES_REGISTER(3) libqb Programmer's Manual QB_LOG_CALLSITES_REGISTER(3)

qb_log_callsites_register - If you are using dynamically loadable modules via dlopen() and you load them after qb_log_init() then after you load the module you will need to do the following to get the filters to work in that module:

#include <qb/qblog.h>

int32_t qb_log_callsites_register(
    struct qb_log_callsite   *_start,
    struct qb_log_callsite   *_stop
);

   _start = dlsym (dl_handle, QB_ATTR_SECTION_START_STR);
_stop = dlsym (dl_handle, QB_ATTR_SECTION_STOP_STR);
qb_log_callsites_register(_start, _stop);

An instance of this structure is created for each log message with the message-id. 
struct qb_log_callsite {
    const char   *function;
    const char   *filename;
    const char   *format;
    uint8_t       priority;
    uint32_t      lineno;
    uint32_t      targets;
    uint32_t      tags;
    const char   *message_id;
};

qb_log_filter_fn_set(3), qb_log_from_external_source_va2(3), qb_log_thread_start(3), qb_log_target_user_data_get(3), qb_log_tags_stringify_fn_set(3), qb_log_file_reopen(3), qb_log_fini(3), qb_log_callsites_dump(3), qb_log_ctl2(3), qb_log_target_user_data_set(3), qb_log_target_format(3), qb_log_thread_priority_set(3), qb_log_facility2int(3), qb_log_filter_ctl2(3), qb_log_file_close(3), qb_log_format_set(3), qb_log_real_(3), qb_log_from_external_source_va(3), qb_log_callsite_get(3), qb_log_blackbox_write_to_file(3), qb_log_real_va_(3), qb_log_from_external_source(3), qb_log_blackbox_print_from_file(3), qb_log_facility2str(3), qb_log_callsite_get2(3), qb_log_ctl(3), qb_log_filter_ctl(3), qb_log_custom_close(3), qb_log_init(3), qb_log_file_open(3), qb_log_custom_open(3)

Copyright (c) 2017 Red Hat, Inc.

2021-03-03 LIBQB