From ac726c8896d3bb136d6da854bd728118e75ec914 Mon Sep 17 00:00:00 2001 From: Peter Powell Date: Fri, 19 Apr 2013 06:26:50 +0100 Subject: Move LogLevel enum from filelogger to logger. --- include/logger.h | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'include/logger.h') diff --git a/include/logger.h b/include/logger.h index 7b4c45f1c..0f95ad873 100644 --- a/include/logger.h +++ b/include/logger.h @@ -20,6 +20,17 @@ #pragma once +/** Levels at which messages can be logged. */ +enum LogLevel +{ + LOG_RAWIO = 5, + LOG_DEBUG = 10, + LOG_VERBOSE = 20, + LOG_DEFAULT = 30, + LOG_SPARSE = 40, + LOG_NONE = 50 +}; + /** Simple wrapper providing periodic flushing to a disk-backed file. */ class CoreExport FileWriter -- cgit v1.2.3 From ad0828aa6431021df45563d34de9976b2d303098 Mon Sep 17 00:00:00 2001 From: Peter Powell Date: Fri, 19 Apr 2013 06:53:37 +0100 Subject: Move LogHeader to LogStream. --- include/inspircd.h | 2 -- include/logger.h | 3 ++- src/logger.cpp | 6 +++++- src/server.cpp | 5 ----- 4 files changed, 7 insertions(+), 9 deletions(-) (limited to 'include/logger.h') diff --git a/include/inspircd.h b/include/inspircd.h index 9a9583499..b55c4c014 100644 --- a/include/inspircd.h +++ b/include/inspircd.h @@ -324,8 +324,6 @@ class CoreExport InspIRCd */ FakeUser* FakeClient; - static const char LogHeader[]; - /** Find a user in the UUID hash * @param uid The UUID to find * @return A pointer to the user, or NULL if the user does not exist diff --git a/include/logger.h b/include/logger.h index 0f95ad873..6bf64801f 100644 --- a/include/logger.h +++ b/include/logger.h @@ -89,6 +89,8 @@ class CoreExport LogStream : public classbase protected: int loglvl; public: + static const char LogHeader[]; + LogStream(int loglevel) : loglvl(loglevel) { } @@ -137,7 +139,6 @@ class CoreExport LogManager FileLogMap FileLogs; public: - LogManager(); ~LogManager(); diff --git a/src/logger.cpp b/src/logger.cpp index b33f65ac4..bc1dd3253 100644 --- a/src/logger.cpp +++ b/src/logger.cpp @@ -51,6 +51,10 @@ * */ +const char LogStream::LogHeader[] = + "Log started for " VERSION " (" REVISION ", " MODULE_INIT_STR ")" + " - compiled on " SYSTEM; + LogManager::LogManager() { Logging = false; @@ -126,7 +130,7 @@ void LogManager::OpenFileLogs() fw = fwi->second; } FileLogStream* fls = new FileLogStream(loglevel, fw); - fls->OnLog(LOG_SPARSE, "HEADER", InspIRCd::LogHeader); + fls->OnLog(LOG_SPARSE, "HEADER", LogStream::LogHeader); AddLogTypes(type, fls, true); } } diff --git a/src/server.cpp b/src/server.cpp index 2e6109202..66b175a1a 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -73,11 +73,6 @@ std::string InspIRCd::GetVersionString(bool getFullVersion) return BRANCH " " + Config->ServerName + " :" + Config->CustomVersion; } -const char InspIRCd::LogHeader[] = - "Log started for " VERSION " (" REVISION ", " MODULE_INIT_STR ")" - " - compiled on " SYSTEM; - - std::string UIDGenerator::GenerateSID(const std::string& servername, const std::string& serverdesc) { unsigned int sid = 0; -- cgit v1.2.3 From b1806589625beb5f189f7fe675073f5aa105f814 Mon Sep 17 00:00:00 2001 From: Peter Powell Date: Fri, 19 Apr 2013 10:26:54 +0100 Subject: Accept a LogLevel instead of an int in logging methods. --- include/filelogger.h | 4 ++-- include/logger.h | 12 ++++++------ src/filelogger.cpp | 5 ++--- src/logger.cpp | 7 +++---- 4 files changed, 13 insertions(+), 15 deletions(-) (limited to 'include/logger.h') diff --git a/include/filelogger.h b/include/filelogger.h index 94456fecc..ce571c3ae 100644 --- a/include/filelogger.h +++ b/include/filelogger.h @@ -29,9 +29,9 @@ class CoreExport FileLogStream : public LogStream private: FileWriter *f; public: - FileLogStream(int loglevel, FileWriter *fw); + FileLogStream(LogLevel loglevel, FileWriter *fw); virtual ~FileLogStream(); - virtual void OnLog(int loglevel, const std::string &type, const std::string &msg); + virtual void OnLog(LogLevel loglevel, const std::string &type, const std::string &msg); }; diff --git a/include/logger.h b/include/logger.h index 6bf64801f..2ea280be8 100644 --- a/include/logger.h +++ b/include/logger.h @@ -87,11 +87,11 @@ class CoreExport FileWriter class CoreExport LogStream : public classbase { protected: - int loglvl; + LogLevel loglvl; public: static const char LogHeader[]; - LogStream(int loglevel) : loglvl(loglevel) + LogStream(LogLevel loglevel) : loglvl(loglevel) { } @@ -103,13 +103,13 @@ class CoreExport LogStream : public classbase /** Changes the loglevel for this LogStream on-the-fly. * This is needed for -nofork. But other LogStreams could use it to change loglevels. */ - void ChangeLevel(int lvl) { this->loglvl = lvl; } + void ChangeLevel(LogLevel lvl) { this->loglvl = lvl; } /** Called when there is stuff to log for this particular logstream. The derived class may take no action with it, or do what it * wants with the output, basically. loglevel and type are primarily for informational purposes (the level and type of the event triggered) * and msg is, of course, the actual message to log. */ - virtual void OnLog(int loglevel, const std::string &type, const std::string &msg) = 0; + virtual void OnLog(LogLevel loglevel, const std::string &type, const std::string &msg) = 0; }; typedef std::map FileLogMap; @@ -213,12 +213,12 @@ class CoreExport LogManager * @param loglevel Log message level (LOG_DEBUG, LOG_VERBOSE, LOG_DEFAULT, LOG_SPARSE, LOG_NONE) * @param msg The message to be logged (literal). */ - void Log(const std::string &type, int loglevel, const std::string &msg); + void Log(const std::string &type, LogLevel loglevel, const std::string &msg); /** Logs an event, sending it to all LogStreams registered for the type. * @param type Log message type (ex: "USERINPUT", "MODULE", ...) * @param loglevel Log message level (LOG_DEBUG, LOG_VERBOSE, LOG_DEFAULT, LOG_SPARSE, LOG_NONE) * @param fmt The format of the message to be logged. See your C manual on printf() for details. */ - void Log(const std::string &type, int loglevel, const char *fmt, ...) CUSTOM_PRINTF(4, 5); + void Log(const std::string &type, LogLevel loglevel, const char *fmt, ...) CUSTOM_PRINTF(4, 5); }; diff --git a/src/filelogger.cpp b/src/filelogger.cpp index 245cbbaab..acb210ecb 100644 --- a/src/filelogger.cpp +++ b/src/filelogger.cpp @@ -26,8 +26,7 @@ #include "socketengine.h" #include "filelogger.h" -FileLogStream::FileLogStream(int loglevel, FileWriter *fw) - : LogStream(loglevel), f(fw) +FileLogStream::FileLogStream(LogLevel loglevel, FileWriter *fw) : LogStream(loglevel), f(fw) { ServerInstance->Logs->AddLoggerRef(f); } @@ -38,7 +37,7 @@ FileLogStream::~FileLogStream() ServerInstance->Logs->DelLoggerRef(f); } -void FileLogStream::OnLog(int loglevel, const std::string &type, const std::string &text) +void FileLogStream::OnLog(LogLevel loglevel, const std::string &type, const std::string &text) { static std::string TIMESTR; static time_t LAST = 0; diff --git a/src/logger.cpp b/src/logger.cpp index bc1dd3253..c83a423f0 100644 --- a/src/logger.cpp +++ b/src/logger.cpp @@ -21,7 +21,6 @@ #include "inspircd.h" - #include "filelogger.h" /* @@ -86,7 +85,7 @@ void LogManager::OpenFileLogs() } std::string type = tag->getString("type"); std::string level = tag->getString("level"); - int loglevel = LOG_DEFAULT; + LogLevel loglevel = LOG_DEFAULT; if (level == "rawio") { loglevel = LOG_RAWIO; @@ -297,7 +296,7 @@ bool LogManager::DelLogType(const std::string &type, LogStream *l) return true; } -void LogManager::Log(const std::string &type, int loglevel, const char *fmt, ...) +void LogManager::Log(const std::string &type, LogLevel loglevel, const char *fmt, ...) { if (Logging) { @@ -314,7 +313,7 @@ void LogManager::Log(const std::string &type, int loglevel, const char *fmt, ... this->Log(type, loglevel, std::string(buf)); } -void LogManager::Log(const std::string &type, int loglevel, const std::string &msg) +void LogManager::Log(const std::string &type, LogLevel loglevel, const std::string &msg) { if (Logging) { -- cgit v1.2.3