QEverCloud 6.1.0
Unofficial Evernote Cloud API for Qt
Loading...
Searching...
No Matches
Log.h File Reference
#include "Export.h"
#include "Helpers.h"
#include <QDateTime>
#include <QDebug>
#include <QObject>
#include <QTextStream>
#include <memory>

Go to the source code of this file.

Classes

class  qevercloud::ILogger

Namespaces

namespace  qevercloud

Macros

#define __QEVERCLOUD_LOG_BASE(component, level, message)
#define QEC_TRACE(component, message)
#define QEC_DEBUG(component, message)
#define QEC_INFO(component, message)
#define QEC_WARNING(component, message)
#define QEC_ERROR(component, message)

Typedefs

using qevercloud::ILoggerPtr = std::shared_ptr<ILogger>

Enumerations

enum class  qevercloud::LogLevel {
  qevercloud::Trace = 0 , qevercloud::Debug , qevercloud::Info , qevercloud::Warn ,
  qevercloud::Error
}

Functions

QEVERCLOUD_EXPORT QTextStream & qevercloud::operator<< (QTextStream &out, const LogLevel level)
QEVERCLOUD_EXPORT QDebug & qevercloud::operator<< (QDebug &out, const LogLevel level)
QEVERCLOUD_EXPORT ILoggerPtr qevercloud::logger ()
QEVERCLOUD_EXPORT void qevercloud::setLogger (ILoggerPtr logger)
QEVERCLOUD_EXPORT ILoggerPtr qevercloud::nullLogger ()
QEVERCLOUD_EXPORT ILoggerPtr qevercloud::newStdErrLogger (LogLevel level=LogLevel::Warn)

Macro Definition Documentation

◆ __QEVERCLOUD_LOG_BASE

#define __QEVERCLOUD_LOG_BASE ( component,
level,
message )
Value:
{ \
auto __qevercloudLogger = ::qevercloud::logger(); \
if (__qevercloudLogger->shouldLog(level, component)) \
{ \
QString msg; \
QDebug dbg(&msg); \
dbg.nospace(); \
dbg.noquote(); \
dbg << message; \
__qevercloudLogger->log( \
level, \
component, \
__FILE__, \
__LINE__, \
QDateTime::currentMSecsSinceEpoch(), \
msg); \
} \
} \
QEVERCLOUD_EXPORT ILoggerPtr logger()

◆ QEC_DEBUG

#define QEC_DEBUG ( component,
message )
Value:
__QEVERCLOUD_LOG_BASE(component, LogLevel::Debug, message) \
#define __QEVERCLOUD_LOG_BASE(component, level, message)
Definition Log.h:72

◆ QEC_ERROR

#define QEC_ERROR ( component,
message )
Value:
__QEVERCLOUD_LOG_BASE(component, LogLevel::Error, message) \

◆ QEC_INFO

#define QEC_INFO ( component,
message )
Value:
__QEVERCLOUD_LOG_BASE(component, LogLevel::Info, message) \

◆ QEC_TRACE

#define QEC_TRACE ( component,
message )
Value:
__QEVERCLOUD_LOG_BASE(component, LogLevel::Trace, message) \

◆ QEC_WARNING

#define QEC_WARNING ( component,
message )
Value:
__QEVERCLOUD_LOG_BASE(component, LogLevel::Warn, message) \