mirror of
https://github.com/pgadmin-org/pgadmin4.git
synced 2026-10-13 00:21:59 -05:00
Major refactoring of the runtime code, Specifically: - Move the bulk of the core code from main() into a new Runtime class. - Break up the mass of code that was main() into a number of relatively simple functions. - Make the Configuration dialog synchronous so the Log dialog can be properly viewed. - Enable/disable menu options at the right time. - Remove support for Qt < 5.0. - Remove the application name constant and hardcode the name to simplify the code. - Improve log messages. - Replace the sdbm hashing with Qt's MD5 hashing.
64 lines
1.3 KiB
C++
64 lines
1.3 KiB
C++
//////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// pgAdmin 4 - PostgreSQL Tools
|
|
//
|
|
// Copyright (C) 2013 - 2020, The pgAdmin Development Team
|
|
// This software is released under the PostgreSQL Licence
|
|
//
|
|
// Logger.cpp - Logger Utility
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////
|
|
|
|
#include "pgAdmin4.h"
|
|
#include "Logger.h"
|
|
|
|
#include <QDateTime>
|
|
#include <QTextStream>
|
|
#include <QStandardPaths>
|
|
|
|
Logger* Logger::m_pThis = Q_NULLPTR;
|
|
QFile* Logger::m_Logfile = Q_NULLPTR;
|
|
|
|
Logger::Logger()
|
|
{
|
|
}
|
|
|
|
Logger::~Logger()
|
|
{
|
|
}
|
|
|
|
Logger* Logger::GetLogger()
|
|
{
|
|
if (m_pThis == Q_NULLPTR)
|
|
{
|
|
m_pThis = new Logger();
|
|
m_Logfile = new QFile;
|
|
m_Logfile->setFileName(getStartupLogFile());
|
|
m_Logfile->open(QIODevice::WriteOnly | QIODevice::Text);
|
|
m_Logfile->setPermissions(QFile::ReadOwner|QFile::WriteOwner);
|
|
}
|
|
|
|
return m_pThis;
|
|
}
|
|
|
|
void Logger::Log(const QString& sMessage)
|
|
{
|
|
QString text = QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss: ") + sMessage + "\n";
|
|
if (m_Logfile != Q_NULLPTR)
|
|
{
|
|
QTextStream out(m_Logfile);
|
|
out << text;
|
|
}
|
|
}
|
|
|
|
void Logger::ReleaseLogger()
|
|
{
|
|
if (m_pThis != Q_NULLPTR)
|
|
{
|
|
if(m_Logfile != Q_NULLPTR)
|
|
m_Logfile->close();
|
|
delete m_pThis;
|
|
m_pThis = Q_NULLPTR;
|
|
}
|
|
}
|