QB_LOG_REAL_(3)

πŸ’– QB_LOG_REAL_(3) πŸ’–

okay bestie, so this one lives in the libqb Programmer's Manual, and I need you to hear me when I say: it's an internal function. Like, backstage-pass energy. The page literally says so itself. ✨


🌸 NAME 🌸

qb_log_real_ β€” Internal function: use qb_log() or qb_logt().

no cap, that's the whole name section. the function is internal, and the manpage is telling you to your face: go use qb_log() or qb_logt() instead. periodt. πŸ’…

πŸ¦‹ SYNOPSIS πŸ¦‹

#include <qb/qblog.h>

void qb_log_real_(
    struct qb_log_callsite   *cs,
    ...
);

like, it takes a cs (a struct qb_log_callsite *) and then ... β€” yes, literally just vibes and varargs after that. 🫢


✨ DESCRIPTION ✨

ngl the og page keeps this section very lowkey β€” there's no prose here, it just rolls straight into the structures. so let's go. πŸ’œ


πŸŽ€ STRUCTURES πŸŽ€

here's the tea: an instance of this struct gets created for each log message, with the message-id. one per message. iconic behavior honestly. πŸ‘‘

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;
};

look at her. function, filename, format, priority, lineno, targets, tags, message_id. all the little details about where a log line came from and where it's going. main character struct fr fr. 🌟


🌈 SEE ALSO 🌈

the whole friend group, no one left out: 🫢


Copyright (c) 2017 Red Hat, Inc.


and that's the whole page, bestie. this is LIBQB, dated 2025-09-16, signing off β€” stay internal, stay iconic, and go call qb_log() like I told you. πŸ’–πŸŽ€πŸ¦‹βœ¨

πŸ“¦ where this page comes from