refs #467 CFileLogger must not use CLogSubscriber or CLogPatternHandler because this would cause undesired dbus traffic.

This commit is contained in:
Mathew Sutcliffe
2015-09-20 19:15:04 +01:00
parent 1735ec9ff0
commit 246753d05e
2 changed files with 8 additions and 9 deletions

View File

@@ -21,7 +21,6 @@ namespace BlackMisc
CFileLogger::CFileLogger(const QString &applicationName, const QString &logPath, QObject *parent) :
QObject(parent),
m_logSubscriber(this, &CFileLogger::ps_writeStatusMessageToFile),
m_logFile(this),
m_applicationName(applicationName),
m_logPath(logPath)
@@ -34,6 +33,9 @@ namespace BlackMisc
m_stream.setDevice(&m_logFile);
m_stream.setCodec("UTF-8");
writeHeaderToFile();
connect(CLogHandler::instance(), &CLogHandler::localMessageLogged, this, &CFileLogger::ps_writeStatusMessageToFile);
connect(CLogHandler::instance(), &CLogHandler::remoteMessageLogged, this, &CFileLogger::ps_writeStatusMessageToFile);
}
CFileLogger::~CFileLogger()
@@ -45,13 +47,10 @@ namespace BlackMisc
}
}
void CFileLogger::changeLogPattern(const CLogPattern &pattern)
{
m_logSubscriber.changeSubscription(pattern);
}
void CFileLogger::ps_writeStatusMessageToFile(const BlackMisc::CStatusMessage &statusMessage)
{
if (! m_logPattern.match(statusMessage)) { return; }
QString finalContent = QDateTime::currentDateTime().toString(QStringLiteral("hh:mm:ss "));
finalContent += statusMessage.getHumanReadableCategory();
finalContent += " ";

View File

@@ -45,8 +45,8 @@ namespace BlackMisc
//! Destructor.
~CFileLogger();
//! Change the log pattern. Call this method at least once to start logging
void changeLogPattern(const CLogPattern &pattern);
//! Change the log pattern. Default is to log all messages.
void changeLogPattern(const CLogPattern &pattern) { m_logPattern = pattern; }
private slots:
@@ -60,7 +60,7 @@ namespace BlackMisc
void writeHeaderToFile();
void writeContentToFile(const QString &content);
CLogSubscriber m_logSubscriber;
CLogPattern m_logPattern;
QFile m_logFile;
QTextStream m_stream;
QString m_applicationName;