diff --git a/CommonLibs/Logger.cpp b/CommonLibs/Logger.cpp index ee607fdf..4bfb782e 100644 --- a/CommonLibs/Logger.cpp +++ b/CommonLibs/Logger.cpp @@ -35,8 +35,6 @@ #include "Logger.h" #include "Threads.h" // pat added -#define MAX_ALARMS 20 - using namespace std; // Switches to enable/disable logging targets @@ -48,26 +46,6 @@ Mutex gLogToLock; // Global log level threshold: int config_log_level; -/**@ The global alarms table. */ -//@{ -Mutex alarmsLock; -list alarmsList; -void addAlarm(const string&); -//@} - - - -// (pat) If Log messages are printed before the classes in this module are inited -// (which happens when static classes have constructors that do work) -// the OpenBTS just crashes. -// Prevent that by setting sLoggerInited to true when this module is inited. -static bool sLoggerInited = 0; -static struct CheckLoggerInitStatus { - CheckLoggerInitStatus() { sLoggerInited = 1; } -} sCheckloggerInitStatus; - - - /** Names of the logging levels. */ const char *levelNames[] = { "EMERG", "ALERT", "CRIT", "ERR", "WARNING", "NOTICE", "INFO", "DEBUG" @@ -119,36 +97,11 @@ std::ostream& operator<<(std::ostream& os, std::ostringstream& ss) return os << ss.str(); } -// copies the alarm list and returns it. list supposed to be small. -list gGetLoggerAlarms() -{ - alarmsLock.lock(); - list ret; - // excuse the "complexity", but to use std::copy with a list you need - // an insert_iterator - copy technically overwrites, doesn't insert. - insert_iterator< list > ii(ret, ret.begin()); - copy(alarmsList.begin(), alarmsList.end(), ii); - alarmsLock.unlock(); - return ret; -} - -/** Add an alarm to the alarm list. */ -void addAlarm(const string& s) -{ - alarmsLock.lock(); - alarmsList.push_back(s); - while (alarmsList.size() > MAX_ALARMS) alarmsList.pop_front(); - alarmsLock.unlock(); -} - - Log::~Log() { if (mDummyInit) return; // Anything at or above LOG_CRIT is an "alarm". - // Save alarms in the local list and echo them to stderr. if (mPriority <= LOG_ERR) { - if (sLoggerInited) addAlarm(mStream.str().c_str()); cerr << mStream.str() << endl; } // Current logging level was already checked by the macro. So just log. diff --git a/CommonLibs/Logger.h b/CommonLibs/Logger.h index ef11932c..7b208fa8 100644 --- a/CommonLibs/Logger.h +++ b/CommonLibs/Logger.h @@ -103,10 +103,6 @@ class Log { extern bool gLogToConsole; // Output log messages to stdout extern bool gLogToSyslog; // Output log messages to syslog - - -std::list gGetLoggerAlarms(); ///< Get a copy of the recent alarm list. - const std::string timestr(); // A timestamp to print in messages. std::ostream& operator<<(std::ostream& os, std::ostringstream& ss); diff --git a/tests/CommonLibs/LogTest.cpp b/tests/CommonLibs/LogTest.cpp index f64041d1..5d1dd2c8 100644 --- a/tests/CommonLibs/LogTest.cpp +++ b/tests/CommonLibs/LogTest.cpp @@ -29,14 +29,6 @@ #include "Logger.h" -void printAlarms() -{ - std::ostream_iterator output( std::cout, "\n" ); - std::list alarms = gGetLoggerAlarms(); - std::cout << "# alarms = " << alarms.size() << std::endl; - std::copy( alarms.begin(), alarms.end(), output ); -} - int main(int argc, char *argv[]) { gLogInit("LogTest","NOTICE",LOG_LOCAL7); @@ -49,14 +41,8 @@ int main(int argc, char *argv[]) Log(LOG_NOTICE).get() << " testing the logger."; Log(LOG_INFO).get() << " testing the logger."; Log(LOG_DEBUG).get() << " testing the logger."; - std::cout << "\n\n\n"; - std::cout << "testing Alarms\n"; - std::cout << "you should see three lines:" << std::endl; - printAlarms(); std::cout << "----------- generating 20 alarms ----------" << std::endl; for (int i = 0 ; i < 20 ; ++i) { Log(LOG_ALERT).get() << i; } - std::cout << "you should see ten lines with the numbers 10..19:" << std::endl; - printAlarms(); } diff --git a/tests/CommonLibs/LogTest.ok b/tests/CommonLibs/LogTest.ok index e1211b02..ac60314e 100644 --- a/tests/CommonLibs/LogTest.ok +++ b/tests/CommonLibs/LogTest.ok @@ -6,16 +6,6 @@ WARNING testing the logger. NOTICE testing the logger. INFO testing the logger. DEBUG testing the logger. - - - -testing Alarms -you should see three lines: -# alarms = 4 -EMERG testing the logger. -ALERT testing the logger. -CRIT testing the logger. -ERR testing the logger. ----------- generating 20 alarms ---------- ALERT 0 ALERT 1 @@ -37,25 +27,3 @@ ALERT 16 ALERT 17 ALERT 18 ALERT 19 -you should see ten lines with the numbers 10..19: -# alarms = 20 -ALERT 0 -ALERT 1 -ALERT 2 -ALERT 3 -ALERT 4 -ALERT 5 -ALERT 6 -ALERT 7 -ALERT 8 -ALERT 9 -ALERT 10 -ALERT 11 -ALERT 12 -ALERT 13 -ALERT 14 -ALERT 15 -ALERT 16 -ALERT 17 -ALERT 18 -ALERT 19