![]() |
Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
|
#include "qlogging.h"#include "qlogging_p.h"#include "qbytearray.h"#include "qlist.h"#include "qcoreapplication.h"#include "private/qcoreapplication_p.h"#include "qdatetime.h"#include "qdebug.h"#include "qgettid_p.h"#include "private/qlocking_p.h"#include "qloggingcategory.h"#include "private/qloggingregistry_p.h"#include "qmutex.h"#include "qscopeguard.h"#include "qstring.h"#include "qtcore_tracepoints_p.h"#include "qthread.h"#include "qvarlengtharray.h"#include <cstdlib>#include <algorithm>#include <chrono>#include <memory>#include <vector>#include <stdio.h>Go to the source code of this file.
Classes | |
| struct | QMessagePattern |
| struct | QMessagePattern::BacktraceParams |
Namespaces | |
| namespace | QtPrivate |
Macros | |
| #define | IF_TOKEN(LEVEL) |
| #define | HANDLE_IF_TOKEN(LEVEL) |
Functions | |
| Q_TRACE_POINT (qtcore, qt_message_print, int typetype, const char *category, const char *function, const char *file, int line, const QString &messagemessage) | |
| template<typename String> | |
| static void | qt_maybe_message_fatal (QtMsgType, const QMessageLogContext &context, String &&messagemessage) |
| \inmodule QtCore \title Qt Logging Types | |
| static void | qt_message_print (QtMsgType, const QMessageLogContext &context, const QString &messagemessage) |
| static void | preformattedMessageHandler (QtMsgType typetype, const QMessageLogContext &context, const QString &formattedMessage) |
| static QString | formatLogMessage (QtMsgType typetype, const QMessageLogContext &context, const QString &str) |
| static int | checked_var_value (const char *varname) |
| static bool | isFatalCountDown (const char *varname, QBasicAtomicInt &nn) |
| static bool | isFatal (QtMsgType msgType) |
| static bool | qt_append_thread_name_to (QString &messagemessage) |
| static bool | systemHasStderr () |
Returns true if writing to stderr is supported. | |
| static bool | stderrHasConsoleAttached () |
Returns true if writing to stderr will end up in a console/terminal visible to the user. | |
| bool | QtPrivate::shouldLogToStderr () |
Returns true if logging stderr should be ensured. | |
| static Q_NEVER_INLINE void | qt_message (QtMsgType msgType, const QMessageLogContext &context, const char *msg, va_list ap) |
| static bool | isDefaultCategory (const char *category) |
| Q_AUTOTEST_EXPORT QByteArray | qCleanupFuncinfo (QByteArray info) |
| Q_DECLARE_TYPEINFO (QMessagePattern::BacktraceParams, Q_RELOCATABLE_TYPE) | |
| static void | qDefaultMessageHandler (QtMsgType typetype, const QMessageLogContext &context, const QString &buf) |
| static void | stderr_message_handler (QtMsgType typetype, const QMessageLogContext &context, const QString &formattedMessage) |
| static constexpr auto | systemMessageSink () |
| static bool | grabMessageHandler () |
| static void | ungrabMessageHandler () |
| void | qt_message_output (QtMsgType msgType, const QMessageLogContext &context, const QString &messagemessage) |
| void | qErrnoWarning (const char *msg,...) |
| void | qErrnoWarning (int code, const char *msg,...) |
| QtMessageHandler | qInstallMessageHandler (QtMessageHandler hh) |
| void | qSetMessagePattern (const QString &patternpattern) |
| static void | copyInternalContext (QInternalMessageLogContext *self, const QMessageLogContext &logContext) noexcept |
Variables | |
| static Q_CONSTINIT QBasicAtomicInt | fatalCriticalsCount = Q_BASIC_ATOMIC_INITIALIZER(0) |
| static Q_CONSTINIT QBasicAtomicInt | fatalWarningsCount = Q_BASIC_ATOMIC_INITIALIZER(0) |
| static const char | categoryTokenC [] = "%{category}" |
| static const char | typeTokenC [] = "%{type}" |
| static const char | messageTokenC [] = "%{message}" |
| static const char | fileTokenC [] = "%{file}" |
| static const char | lineTokenC [] = "%{line}" |
| static const char | functionTokenC [] = "%{function}" |
| static const char | pidTokenC [] = "%{pid}" |
| static const char | appnameTokenC [] = "%{appname}" |
| static const char | threadidTokenC [] = "%{threadid}" |
| static const char | threadnameTokenC [] = "%{threadname}" |
| static const char | qthreadptrTokenC [] = "%{qthreadptr}" |
| static const char | timeTokenC [] = "%{time" |
| static const char | backtraceTokenC [] = "%{backtrace" |
| static const char | ifCategoryTokenC [] = "%{if-category}" |
| static const char | ifDebugTokenC [] = "%{if-debug}" |
| static const char | ifInfoTokenC [] = "%{if-info}" |
| static const char | ifWarningTokenC [] = "%{if-warning}" |
| static const char | ifCriticalTokenC [] = "%{if-critical}" |
| static const char | ifFatalTokenC [] = "%{if-fatal}" |
| static const char | endifTokenC [] = "%{endif}" |
| static const char | emptyTokenC [] = "" |
| static Q_CONSTINIT QBasicAtomicPointer< void(QtMsgType, const QMessageLogContext &, const QString &)> | messageHandler = Q_BASIC_ATOMIC_INITIALIZER(nullptr) |
| static Q_CONSTINIT bool | msgHandlerGrabbed = false |
| #define HANDLE_IF_TOKEN | ( | LEVEL | ) |
| #define IF_TOKEN | ( | LEVEL | ) |
|
static |
Definition at line 142 of file qlogging.cpp.
Referenced by isFatalCountDown().
|
staticnoexcept |
Definition at line 2459 of file qlogging.cpp.
|
static |
Definition at line 1666 of file qlogging.cpp.
References appnameTokenC, QMessageLogContext::category, categoryTokenC, endifTokenC, QMessageLogContext::file, fileTokenC, QMessageLogContext::function, functionTokenC, ifCategoryTokenC, isDefaultCategory(), lineTokenC, messageTokenC, QMessagePattern::mutex, pidTokenC, QtCriticalMsg, QtDebugMsg, QtFatalMsg, qthreadptrTokenC, threadidTokenC, threadnameTokenC, timeTokenC, and typeTokenC.
|
static |
Definition at line 2157 of file qlogging.cpp.
References msgHandlerGrabbed.
Referenced by qt_message_print().
|
static |
Definition at line 944 of file qlogging.cpp.
Referenced by formatLogMessage(), and qt_message_print().
|
static |
Definition at line 190 of file qlogging.cpp.
References QtDebugMsg, and QtFatalMsg.
Referenced by qt_maybe_message_fatal().
|
static |
Definition at line 156 of file qlogging.cpp.
References checked_var_value().
|
static |
Definition at line 2123 of file qlogging.cpp.
References stderr_message_handler(), and systemMessageSink().
| Q_DECLARE_TYPEINFO | ( | QMessagePattern::BacktraceParams | , |
| Q_RELOCATABLE_TYPE | ) |
| Q_TRACE_POINT | ( | qtcore | , |
| qt_message_print | , | ||
| int | type, | ||
| const char * | category, | ||
| const char * | function, | ||
| const char * | file, | ||
| int | line, | ||
| const QString & | message ) |
| Q_AUTOTEST_EXPORT QByteArray qCleanupFuncinfo | ( | QByteArray | info | ) |
Definition at line 952 of file qlogging.cpp.
|
static |
Definition at line 2140 of file qlogging.cpp.
References systemMessageSink().
Referenced by qInstallMessageHandler(), and qt_message_print().
| void qErrnoWarning | ( | const char * | msg, |
| ... ) |
Definition at line 2237 of file qlogging.cpp.
References QMessageLogContext::QMessageLogContext().
| void qErrnoWarning | ( | int | code, |
| const char * | msg, | ||
| ... ) |
Definition at line 2253 of file qlogging.cpp.
References QMessageLogContext::QMessageLogContext().
| QtMessageHandler qInstallMessageHandler | ( | QtMessageHandler | h | ) |
Definition at line 2442 of file qlogging.cpp.
References qDefaultMessageHandler().
Definition at line 2451 of file qlogging.cpp.
References QMessagePattern::mutex.
|
static |
Definition at line 239 of file qlogging.cpp.
|
static |
\inmodule QtCore \title Qt Logging Types
The <QtLogging> header file defines Qt logging types, functions and macros.
The <QtLogging> header file contains several types, functions and macros for logging.
The QtMsgType enum identifies the various messages that can be generated and sent to a Qt message handler; QtMessageHandler is a type definition for a pointer to a function with the signature {void myMessageHandler(QtMsgType, const QMessageLogContext &, const char *)}. qInstallMessageHandler() function can be used to install the given QtMessageHandler. QMessageLogContext class contains the line, file, and function the message was logged at. This information is created by the QMessageLogger class.
<QtLogging> also contains functions that generate messages from the given string argument: qDebug(), qInfo(), qWarning(), qCritical(), and qFatal(). These functions call the message handler with the given message.
Example:
Definition at line 2195 of file qlogging.cpp.
References isFatal().
|
static |
Definition at line 398 of file qlogging.cpp.
| void qt_message_output | ( | QtMsgType | msgType, |
| const QMessageLogContext & | context, | ||
| const QString & | message ) |
Definition at line 2230 of file qlogging.cpp.
|
static |
Definition at line 2171 of file qlogging.cpp.
References QMessageLogContext::category, QMessageLogContext::file, QMessageLogContext::function, grabMessageHandler(), isDefaultCategory(), QMessageLogContext::line, qDefaultMessageHandler(), qt_message_print(), QtFatalMsg, stderr_message_handler(), and ungrabMessageHandler().
Referenced by qt_message_print().
|
static |
Definition at line 2078 of file qlogging.cpp.
Referenced by preformattedMessageHandler(), and qt_message_print().
|
static |
Returns true if writing to stderr will end up in a console/terminal visible to the user.
This is typically the case if the application was started from the command line.
If the application is started without a controlling console/terminal, but the parent process reads stderr and presents it to the user in some other way, the parent process may override the detection in this function by setting the QT_ASSUME_STDERR_HAS_CONSOLE environment variable to 1.
Definition at line 283 of file qlogging.cpp.
References systemHasStderr().
Referenced by QtPrivate::shouldLogToStderr().
|
static |
Returns true if writing to stderr is supported.
Definition at line 254 of file qlogging.cpp.
Referenced by stderrHasConsoleAttached().
|
staticconstexpr |
Definition at line 2093 of file qlogging.cpp.
Referenced by preformattedMessageHandler(), and qDefaultMessageHandler().
|
static |
Definition at line 2166 of file qlogging.cpp.
References msgHandlerGrabbed.
Referenced by qt_message_print().
|
static |
Definition at line 1125 of file qlogging.cpp.
Referenced by formatLogMessage(), and QMessagePattern::setPattern().
|
static |
Definition at line 1130 of file qlogging.cpp.
Referenced by QMessagePattern::setPattern().
|
static |
Definition at line 1118 of file qlogging.cpp.
Referenced by formatLogMessage(), QMessagePattern::setDefaultPattern(), and QMessagePattern::setPattern().
|
static |
Definition at line 1138 of file qlogging.cpp.
Referenced by QMessagePattern::setPattern().
|
static |
Definition at line 1137 of file qlogging.cpp.
Referenced by formatLogMessage(), QMessagePattern::setDefaultPattern(), and QMessagePattern::setPattern().
|
static |
Definition at line 188 of file qlogging.cpp.
|
static |
Definition at line 189 of file qlogging.cpp.
|
static |
Definition at line 1121 of file qlogging.cpp.
Referenced by formatLogMessage(), and QMessagePattern::setPattern().
|
static |
Definition at line 1123 of file qlogging.cpp.
Referenced by formatLogMessage(), and QMessagePattern::setPattern().
|
static |
Definition at line 1131 of file qlogging.cpp.
Referenced by formatLogMessage(), QMessagePattern::setDefaultPattern(), and QMessagePattern::setPattern().
|
static |
Definition at line 1135 of file qlogging.cpp.
Referenced by QMessagePattern::setPattern().
|
static |
Definition at line 1132 of file qlogging.cpp.
Referenced by QMessagePattern::setPattern().
|
static |
Definition at line 1136 of file qlogging.cpp.
Referenced by QMessagePattern::setPattern().
|
static |
Definition at line 1133 of file qlogging.cpp.
Referenced by QMessagePattern::setPattern().
|
static |
Definition at line 1134 of file qlogging.cpp.
Referenced by QMessagePattern::setPattern().
|
static |
Definition at line 1122 of file qlogging.cpp.
Referenced by formatLogMessage(), and QMessagePattern::setPattern().
|
static |
Definition at line 1792 of file qlogging.cpp.
|
static |
Definition at line 1120 of file qlogging.cpp.
Referenced by formatLogMessage(), QMessagePattern::setDefaultPattern(), and QMessagePattern::setPattern().
|
thread_localstatic |
Definition at line 2155 of file qlogging.cpp.
Referenced by grabMessageHandler(), and ungrabMessageHandler().
|
static |
Definition at line 1124 of file qlogging.cpp.
Referenced by formatLogMessage(), and QMessagePattern::setPattern().
|
static |
Definition at line 1128 of file qlogging.cpp.
Referenced by formatLogMessage(), and QMessagePattern::setPattern().
|
static |
Definition at line 1126 of file qlogging.cpp.
Referenced by formatLogMessage(), and QMessagePattern::setPattern().
|
static |
Definition at line 1127 of file qlogging.cpp.
Referenced by formatLogMessage(), and QMessagePattern::setPattern().
|
static |
Definition at line 1129 of file qlogging.cpp.
Referenced by formatLogMessage(), and QMessagePattern::setPattern().
|
static |
Definition at line 1119 of file qlogging.cpp.
Referenced by formatLogMessage(), and QMessagePattern::setPattern().