Navigation Menu

Skip to content

Commit

Permalink
QgsServerLogger cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
Hugo Mercier committed Dec 14, 2016
1 parent a8b9723 commit 64b131c
Show file tree
Hide file tree
Showing 5 changed files with 36 additions and 13 deletions.
4 changes: 3 additions & 1 deletion src/core/qgsmessagelog.h
Expand Up @@ -37,9 +37,11 @@ class CORE_EXPORT QgsMessageLog : public QObject

enum MessageLevel
{
ALL = 0,
INFO = 0,
WARNING = 1,
CRITICAL = 2
CRITICAL = 2,
NONE = 3
};

//! add a message to the instance (and create it if necessary)
Expand Down
10 changes: 5 additions & 5 deletions src/server/qgsserver.cpp
Expand Up @@ -179,9 +179,9 @@ QFileInfo QgsServer::defaultProjectFile()
* @param parameterMap
* @param logLevel
*/
void QgsServer::printRequestParameters( const QMap< QString, QString>& parameterMap, int logLevel )
void QgsServer::printRequestParameters( const QMap< QString, QString>& parameterMap, QgsMessageLog::MessageLevel logLevel )
{
if ( logLevel > 0 )
if ( logLevel > QgsMessageLog::INFO )
{
return;
}
Expand Down Expand Up @@ -434,13 +434,13 @@ QPair<QByteArray, QByteArray> QgsServer::handleRequest( const QString& queryStri
if ( ! queryString.isEmpty() )
putenv( QStringLiteral( "QUERY_STRING" ), queryString );

int logLevel = QgsServerLogger::instance()->logLevel();
QgsMessageLog::MessageLevel logLevel = QgsServerLogger::instance()->logLevel();
QTime time; //used for measuring request time if loglevel < 1
QgsProject::instance()->removeAllMapLayers();

qApp->processEvents();

if ( logLevel < 1 )
if ( logLevel == QgsMessageLog::INFO )
{
time.start();
printRequestInfos();
Expand Down Expand Up @@ -614,7 +614,7 @@ QPair<QByteArray, QByteArray> QgsServer::handleRequest( const QString& queryStri

theRequestHandler->sendResponse();

if ( logLevel < 1 )
if ( logLevel == QgsMessageLog::INFO )
{
QgsMessageLog::logMessage( "Request finished in " + QString::number( time.elapsed() ) + " ms", QStringLiteral( "Server" ), QgsMessageLog::INFO );
}
Expand Down
11 changes: 9 additions & 2 deletions src/server/qgsserver.h
Expand Up @@ -33,6 +33,7 @@
#include "qgsconfigcache.h"
#include "qgscapabilitiescache.h"
#include "qgsmapsettings.h"
#include "qgsmessagelog.h"

#ifdef HAVE_SERVER_PYTHON_PLUGINS
#include "qgsserverplugins.h"
Expand Down Expand Up @@ -105,10 +106,16 @@ class SERVER_EXPORT QgsServer
static void dummyMessageHandler( QtMsgType type, const char *msg );
// Mainly for debug
static void printRequestInfos();
// Mainly for debug

/**
* @brief QgsServer::printRequestParameters prints the request parameters
* @param parameterMap
* @param logLevel
*/
static void printRequestParameters(
const QMap< QString, QString>& parameterMap,
int logLevel );
QgsMessageLog::MessageLevel logLevel );

static QFileInfo defaultProjectFile();
static QFileInfo defaultAdminSLD();
static void setupNetworkAccessManager();
Expand Down
4 changes: 2 additions & 2 deletions src/server/qgsserverlogger.cpp
Expand Up @@ -36,7 +36,7 @@ QgsServerLogger* QgsServerLogger::instance()

QgsServerLogger::QgsServerLogger()
: mLogFile( nullptr )
, mLogLevel( 3 )
, mLogLevel( QgsMessageLog::NONE )
{
//logfile
QString filePath = getenv( "QGIS_SERVER_LOG_FILE" );
Expand All @@ -53,7 +53,7 @@ QgsServerLogger::QgsServerLogger()
char* logLevelChar = getenv( "QGIS_SERVER_LOG_LEVEL" );
if ( logLevelChar )
{
mLogLevel = atoi( logLevelChar );
mLogLevel = static_cast<QgsMessageLog::MessageLevel>( atoi( logLevelChar ) );
}

connect( QgsMessageLog::instance(), SIGNAL( messageReceived( QString, QString, QgsMessageLog::MessageLevel ) ), this,
Expand Down
20 changes: 17 additions & 3 deletions src/server/qgsserverlogger.h
Expand Up @@ -30,12 +30,26 @@ class QgsServerLogger: public QObject
{
Q_OBJECT
public:

/**
* Get the singleton instance
*/
static QgsServerLogger* instance();

int logLevel() const { return mLogLevel; }
//QString logFile() const { return mLogFile; }
/**
* Get the current log level
*/
QgsMessageLog::MessageLevel logLevel() const { return mLogLevel; }

public slots:

/**
* Log a message from the server context
*
* @param message the message
* @param tag tag of the message
* @param level log level of the message
*/
void logMessage( const QString& message, const QString& tag, QgsMessageLog::MessageLevel level );

protected:
Expand All @@ -46,7 +60,7 @@ class QgsServerLogger: public QObject

QFile mLogFile;
QTextStream mTextStream;
int mLogLevel;
QgsMessageLog::MessageLevel mLogLevel;
};

#endif // QGSSERVERLOGGER_H

0 comments on commit 64b131c

Please sign in to comment.