QMessageLogger Class
The QMessageLogger class generates log messages. More...
Header: | #include <QMessageLogger> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
Public Types
Public Functions
QMessageLogger() | |
QMessageLogger(const char *file, int line, const char *function) | |
QMessageLogger(const char *file, int line, const char *function, const char *category) | |
void | critical(const char *msg, ...) const |
void | critical(const QLoggingCategory &cat, const char *msg, ...) const |
void | critical(QMessageLogger::CategoryFunction catFunc, const char *msg, ...) const |
QDebug | critical() const |
QDebug | critical(const QLoggingCategory &cat) const |
QDebug | critical(QMessageLogger::CategoryFunction catFunc) const |
void | debug(const char *msg, ...) const |
void | debug(const QLoggingCategory &cat, const char *msg, ...) const |
void | debug(QMessageLogger::CategoryFunction catFunc, const char *msg, ...) const |
QDebug | debug() const |
QDebug | debug(const QLoggingCategory &cat) const |
QDebug | debug(QMessageLogger::CategoryFunction catFunc) const |
void | fatal(const char *msg, ...) const |
(since 6.5) void | fatal(const QLoggingCategory &cat, const char *msg, ...) const |
(since 6.5) void | fatal(QMessageLogger::CategoryFunction catFunc, const char *msg, ...) const |
(since 6.5) QDebug | fatal() const |
(since 6.5) QDebug | fatal(const QLoggingCategory &cat) const |
(since 6.5) QDebug | fatal(QMessageLogger::CategoryFunction catFunc) const |
void | info(const char *msg, ...) const |
void | info(const QLoggingCategory &cat, const char *msg, ...) const |
void | info(QMessageLogger::CategoryFunction catFunc, const char *msg, ...) const |
QDebug | info() const |
QDebug | info(const QLoggingCategory &cat) const |
QDebug | info(QMessageLogger::CategoryFunction catFunc) const |
void | warning(const char *msg, ...) const |
void | warning(const QLoggingCategory &cat, const char *msg, ...) const |
void | warning(QMessageLogger::CategoryFunction catFunc, const char *msg, ...) const |
QDebug | warning() const |
QDebug | warning(const QLoggingCategory &cat) const |
QDebug | warning(QMessageLogger::CategoryFunction catFunc) const |
Detailed Description
QMessageLogger is used to generate messages for the Qt logging framework. Usually one uses it through qDebug(), qInfo(), qWarning(), qCritical, or qFatal() functions, which are actually macros: For example qDebug() expands to QMessageLogger(__FILE__, __LINE__, Q_FUNC_INFO).debug() for debug builds, and QMessageLogger(0, 0, 0).debug() for release builds.
One example of direct use is to forward errors that stem from a scripting language, e.g. QML:
void statusChanged(QQmlComponent::Status status) { if (status == QQmlComponent::Error) { for (const QQmlError &error: std::as_const(component->errors())) { const QByteArray file = error.url().toEncoded(); QMessageLogger(file.constData(), error.line(), 0).debug() << error.description(); } } }
See also QMessageLogContext, qDebug(), qInfo(), qWarning(), qCritical(), and qFatal().
Member Type Documentation
QMessageLogger::CategoryFunction
This is a typedef for a pointer to a function with the following signature:
const QLoggingCategory &category();
The Q_DECLARE_LOGGING_CATEGORY
macro generates a function declaration with this signature, and Q_LOGGING_CATEGORY
generates its definition.
Member Function Documentation
[constexpr]
QMessageLogger::QMessageLogger()
Constructs a default QMessageLogger. See the other constructors to specify context information.
[constexpr]
QMessageLogger::QMessageLogger(const char *file, int line, const char *function)
Constructs a QMessageLogger to record log messages for file at line in function. The is equivalent to QMessageLogger(file, line, function, "default")
[constexpr]
QMessageLogger::QMessageLogger(const char *file, int line, const char *function, const char *category)
Constructs a QMessageLogger to record category messages for file at line in function.
void QMessageLogger::critical(const char *msg, ...) const
Logs a critical message specified with format msg. Additional parameters, specified by msg, may be used.
See also qCritical().
void QMessageLogger::critical(const QLoggingCategory &cat, const char *msg, ...) const
Logs a critical message specified with format msg for the context cat. Additional parameters, specified by msg, may be used.
See also qCCritical().
void QMessageLogger::critical(QMessageLogger::CategoryFunction catFunc, const char *msg, ...) const
Logs a critical message specified with format msg for the context returned by catFunc. Additional parameters, specified by msg, may be used.
See also qCCritical().
QDebug QMessageLogger::critical() const
Logs a critical message using a QDebug stream
See also qCritical() and QDebug.
QDebug QMessageLogger::critical(const QLoggingCategory &cat) const
Logs a critical message into category cat using a QDebug stream.
See also qCCritical() and QDebug.
QDebug QMessageLogger::critical(QMessageLogger::CategoryFunction catFunc) const
Logs a critical message into category returned by catFunc using a QDebug stream.
See also qCCritical() and QDebug.
void QMessageLogger::debug(const char *msg, ...) const
Logs a debug message specified with format msg. Additional parameters, specified by msg, may be used.
See also qDebug().
void QMessageLogger::debug(const QLoggingCategory &cat, const char *msg, ...) const
Logs a debug message specified with format msg for the context cat. Additional parameters, specified by msg, may be used.
See also qCDebug().
void QMessageLogger::debug(QMessageLogger::CategoryFunction catFunc, const char *msg, ...) const
Logs a debug message specified with format msg for the context returned by catFunc. Additional parameters, specified by msg, may be used.
See also qCDebug().
QDebug QMessageLogger::debug() const
Logs a debug message using a QDebug stream
QDebug QMessageLogger::debug(const QLoggingCategory &cat) const
Logs a debug message into category cat using a QDebug stream.
See also qCDebug() and QDebug.
QDebug QMessageLogger::debug(QMessageLogger::CategoryFunction catFunc) const
Logs a debug message into category returned by catFunc using a QDebug stream.
See also qCDebug() and QDebug.
[noexcept]
void QMessageLogger::fatal(const char *msg, ...) const
Logs a fatal message specified with format msg. Additional parameters, specified by msg, may be used.
See also qFatal().
[noexcept, since 6.5]
void QMessageLogger::fatal(const QLoggingCategory &cat, const char *msg, ...) const
Logs a fatal message specified with format msg for the context cat. Additional parameters, specified by msg, may be used.
This function was introduced in Qt 6.5.
See also qCFatal().
[noexcept, since 6.5]
void QMessageLogger::fatal(QMessageLogger::CategoryFunction catFunc, const char *msg, ...) const
Logs a fatal message specified with format msg for the context returned by catFunc. Additional parameters, specified by msg, may be used.
This function was introduced in Qt 6.5.
See also qCFatal().
[since 6.5]
QDebug QMessageLogger::fatal() const
Logs a fatal message using a QDebug stream.
This function was introduced in Qt 6.5.
[since 6.5]
QDebug QMessageLogger::fatal(const QLoggingCategory &cat) const
Logs a fatal message into category cat using a QDebug stream.
This function was introduced in Qt 6.5.
See also qCFatal() and QDebug.
[since 6.5]
QDebug QMessageLogger::fatal(QMessageLogger::CategoryFunction catFunc) const
Logs a fatal message into category returned by catFunc using a QDebug stream.
This function was introduced in Qt 6.5.
See also qCFatal() and QDebug.
void QMessageLogger::info(const char *msg, ...) const
Logs an informational message specified with format msg. Additional parameters, specified by msg, may be used.
See also qInfo().
void QMessageLogger::info(const QLoggingCategory &cat, const char *msg, ...) const
Logs an informational message specified with format msg for the context cat. Additional parameters, specified by msg, may be used.
See also qCInfo().
void QMessageLogger::info(QMessageLogger::CategoryFunction catFunc, const char *msg, ...) const
Logs an informational message specified with format msg for the context returned by catFunc. Additional parameters, specified by msg, may be used.
See also qCInfo().
QDebug QMessageLogger::info() const
Logs an informational message using a QDebug stream.
QDebug QMessageLogger::info(const QLoggingCategory &cat) const
Logs an informational message into the category cat using a QDebug stream.
QDebug QMessageLogger::info(QMessageLogger::CategoryFunction catFunc) const
Logs an informational message into category returned by catFunc using a QDebug stream.
void QMessageLogger::warning(const char *msg, ...) const
Logs a warning message specified with format msg. Additional parameters, specified by msg, may be used.
See also qWarning().
void QMessageLogger::warning(const QLoggingCategory &cat, const char *msg, ...) const
Logs a warning message specified with format msg for the context cat. Additional parameters, specified by msg, may be used.
See also qCWarning().
void QMessageLogger::warning(QMessageLogger::CategoryFunction catFunc, const char *msg, ...) const
Logs a warning message specified with format msg for the context returned by catFunc. Additional parameters, specified by msg, may be used.
See also qCWarning().
QDebug QMessageLogger::warning() const
Logs a warning message using a QDebug stream
See also qWarning() and QDebug.
QDebug QMessageLogger::warning(const QLoggingCategory &cat) const
Logs a warning message into category cat using a QDebug stream.
See also qCWarning() and QDebug.
QDebug QMessageLogger::warning(QMessageLogger::CategoryFunction catFunc) const
Logs a warning message into category returned by catFunc using a QDebug stream.