]> git.stg.codes - stg.git/commitdiff
Introduced logger for plugins.
authorMaxim Mamontov <faust@stg.dp.ua>
Thu, 2 Aug 2012 12:31:53 +0000 (15:31 +0300)
committerMaxim Mamontov <faust@stg.dp.ua>
Thu, 2 Aug 2012 12:31:53 +0000 (15:31 +0300)
47 files changed:
projects/rscriptd/rscriptd.conf
projects/stargazer/plugins/authorization/ao/ao.cpp
projects/stargazer/plugins/authorization/ao/ao.h
projects/stargazer/plugins/authorization/inetaccess/inetaccess.cpp
projects/stargazer/plugins/authorization/inetaccess/inetaccess.h
projects/stargazer/plugins/capture/cap_nf/Makefile
projects/stargazer/plugins/capture/cap_nf/cap_nf.cpp
projects/stargazer/plugins/capture/cap_nf/cap_nf.h
projects/stargazer/plugins/capture/divert_freebsd/Makefile
projects/stargazer/plugins/capture/divert_freebsd/divert_cap.cpp
projects/stargazer/plugins/capture/divert_freebsd/divert_cap.h
projects/stargazer/plugins/capture/ether_freebsd/Makefile
projects/stargazer/plugins/capture/ether_freebsd/ether_cap.cpp
projects/stargazer/plugins/capture/ether_freebsd/ether_cap.h
projects/stargazer/plugins/capture/ether_linux/Makefile
projects/stargazer/plugins/capture/ether_linux/ether_cap.cpp
projects/stargazer/plugins/capture/ether_linux/ether_cap.h
projects/stargazer/plugins/capture/ipq_linux/Makefile
projects/stargazer/plugins/capture/ipq_linux/ipq_cap.cpp
projects/stargazer/plugins/capture/ipq_linux/ipq_cap.h
projects/stargazer/plugins/configuration/rpcconfig/rpcconfig.cpp
projects/stargazer/plugins/configuration/rpcconfig/rpcconfig.h
projects/stargazer/plugins/configuration/sgconfig/configproto.cpp
projects/stargazer/plugins/configuration/sgconfig/configproto.h
projects/stargazer/plugins/configuration/sgconfig/rsconf.cpp
projects/stargazer/plugins/configuration/sgconfig/stgconfig.cpp
projects/stargazer/plugins/configuration/sgconfig/stgconfig.h
projects/stargazer/plugins/other/ping/ping.cpp
projects/stargazer/plugins/other/ping/ping.h
projects/stargazer/plugins/other/radius/radius.cpp
projects/stargazer/plugins/other/radius/radius.h
projects/stargazer/plugins/other/rscript/rscript.cpp
projects/stargazer/plugins/other/rscript/rscript.h
projects/stargazer/plugins/other/smux/smux.cpp
projects/stargazer/plugins/other/smux/smux.h
projects/stargazer/plugins/store/files/file_store.cpp
projects/stargazer/plugins/store/files/file_store.h
projects/stargazer/plugins/store/firebird/firebird_store.cpp
projects/stargazer/plugins/store/firebird/firebird_store.h
projects/stargazer/plugins/store/mysql/Makefile
projects/stargazer/plugins/store/mysql/mysql_store.cpp
projects/stargazer/plugins/store/mysql/mysql_store.h
projects/stargazer/plugins/store/postgresql/Makefile
projects/stargazer/plugins/store/postgresql/postgresql_store.cpp
projects/stargazer/plugins/store/postgresql/postgresql_store.h
stglibs/logger.lib/include/stg/logger.h
stglibs/logger.lib/logger.cpp

index d668d46a94b9920dd333837599698b1348596cbf..fc0fb99f95daeaaa555d77b06ee9132455bf9cf2 100644 (file)
@@ -1,8 +1,8 @@
-LogFileName=/var/log/rscriptd.log
+LogFileName=./rscriptd.log
 ExecutersNum=1
-ConfigDir=/etc/rscriptd
+ConfigDir=./
 Password=123456
 Port=9999
 UserTimeout=60
-ScriptOnConnect=/etc/rscriptd/OnConnect
-ScriptOnDisconnect=/etc/rscriptd/OnDisconnect
+ScriptOnConnect=./OnConnect
+ScriptOnDisconnect=./OnDisconnect
index cef272c0b9bca72ecb75f2601ae6c8cf3fe54995..e3bc192a7d90975b4a12b56e55729f11c38e9064 100644 (file)
@@ -80,7 +80,8 @@ AUTH_AO::AUTH_AO()
       BeforeChgIPNotifierList(),
       AfterChgIPNotifierList(),
       onAddUserNotifier(*this),
-      onDelUserNotifier(*this)
+      onDelUserNotifier(*this),
+      logger(GetPluginLogger(GetStgLogger(), "auth_ao"))
 {
 }
 //-----------------------------------------------------------------------------
index 205ebf5a841a5eded5e9d1bc40d86faa8c2ce9da..879c937ca9c3e51f98a9a09aa9353ce0db425733 100644 (file)
@@ -37,6 +37,7 @@
 #include "stg/notifer.h"
 #include "stg/user_ips.h"
 #include "stg/user.h"
+#include "stg/logger.h"
 
 extern "C" PLUGIN * GetPlugin();
 
@@ -148,6 +149,7 @@ private:
 
         AUTH_AO & auth;
     } onDelUserNotifier;
+    PLUGIN_LOGGER logger;
 
     friend class CHG_BEFORE_NOTIFIER<int>;
     friend class CHG_AFTER_NOTIFIER<int>;
index a6d2073abe709b4457f186f0e6bf4d2b3d58d25a..89ddd09c1553cf9f1afe8d579678e1c1b9c58adc 100644 (file)
@@ -321,9 +321,9 @@ AUTH_IA::AUTH_IA()
       fin6(),
       fin8(),
       packetTypes(),
-      WriteServLog(GetStgLogger()),
       enabledDirs(0xFFffFFff),
-      onDelUserNotifier(*this)
+      onDelUserNotifier(*this),
+      logger(GetPluginLogger(GetStgLogger(), "auth_ia"))
 {
 InitEncrypt(&ctxS, "pr7Hhen");
 
@@ -594,9 +594,9 @@ uint16_t sport = htons(outerAddr.sin_port);
 USER_PTR user;
 if (users->FindByName(login, &user))
     {
-    WriteServLog("User's connect failed: user '%s' not found. IP %s",
-                 login,
-                 inet_ntostring(sip).c_str());
+    logger("User's connect failed: user '%s' not found. IP %s",
+           login,
+           inet_ntostring(sip).c_str());
     printfd(__FILE__, "User '%s' NOT found!\n", login);
     SendError(sip, sport, protoVer, "îÅÐÒÁ×ÉÌØÎÙÊ ÌÏÇÉÎ!");
     return -1;
@@ -620,8 +620,8 @@ if (!user->GetProperty().ips.Get().IsIPInIPS(sip))
     {
     printfd(__FILE__, "User %s. IP address is incorrect. IP %s\n",
             user->GetLogin().c_str(), inet_ntostring(sip).c_str());
-    WriteServLog("User %s. IP address is incorrect. IP %s",
-                 user->GetLogin().c_str(), inet_ntostring(sip).c_str());
+    logger("User %s. IP address is incorrect. IP %s",
+           user->GetLogin().c_str(), inet_ntostring(sip).c_str());
     SendError(sip, sport, protoVer, "ðÏÌØÚÏ×ÁÔÅÌØ ÎÅ ÏÐÏÚÎÁÎ! ðÒÏ×ÅÒØÔÅ IP ÁÄÒÅÓ.");
     return 0;
     }
@@ -758,10 +758,10 @@ if (it == ip2user.end())
                     userPtr->GetLogin().c_str(),
                     inet_ntostring(sip).c_str(),
                    login.c_str());
-            WriteServLog("IP address already in use by user '%s'. IP %s, login: '%s'",
-                         userPtr->GetLogin().c_str(),
-                         inet_ntostring(sip).c_str(),
-                         login.c_str());
+            logger("IP address already in use by user '%s'. IP %s, login: '%s'",
+                   userPtr->GetLogin().c_str(),
+                   inet_ntostring(sip).c_str(),
+                   login.c_str());
             SendError(sip, sport, protoVer, "÷ÁÛ IP ÁÄÒÅÓ ÕÖÅ ÉÓÐÏÌØÚÕÅÔÓÑ!");
             return 0;
             }
@@ -783,10 +783,10 @@ else if (user->GetID() != it->second.user->GetID())
             it->second.user->GetLogin().c_str(),
             inet_ntostring(sip).c_str(),
             user->GetLogin().c_str());
-    WriteServLog("IP address already in use by user '%s'. IP %s, login: '%s'",
-                 it->second.user->GetLogin().c_str(),
-                 inet_ntostring(sip).c_str(),
-                 user->GetLogin().c_str());
+    logger("IP address already in use by user '%s'. IP %s, login: '%s'",
+           it->second.user->GetLogin().c_str(),
+           inet_ntostring(sip).c_str(),
+           user->GetLogin().c_str());
     SendError(sip, sport, protoVer, "÷ÁÛ IP ÁÄÒÅÓ ÕÖÅ ÉÓÐÏÌØÚÕÅÔÓÑ!");
     return 0;
     }
@@ -811,9 +811,9 @@ if (pi == packetTypes.end())
     {
     SendError(sip, sport, protoVer, "îÅÐÒÁ×ÉÌØÎÙÊ ÌÏÇÉΠÉÌÉ ÐÁÒÏÌØ!");
     printfd(__FILE__, "Login or password is wrong!\n");
-    WriteServLog("User's connect failed. User: '%s', ip %s. Wrong login or password",
-                 login.c_str(),
-                 inet_ntostring(sip).c_str());
+    logger("User's connect failed. User: '%s', ip %s. Wrong login or password",
+           login.c_str(),
+           inet_ntostring(sip).c_str());
     ip2user.erase(it);
     return 0;
     }
@@ -823,10 +823,10 @@ if (user->IsAuthorizedBy(this) && user->GetCurrIP() != sip)
     printfd(__FILE__, "Login %s already in use from ip %s. IP %s\n",
             login.c_str(), inet_ntostring(user->GetCurrIP()).c_str(),
             inet_ntostring(sip).c_str());
-    WriteServLog("Login %s already in use from ip %s. IP %s",
-                 login.c_str(),
-                 inet_ntostring(user->GetCurrIP()).c_str(),
-                 inet_ntostring(sip).c_str());
+    logger("Login %s already in use from ip %s. IP %s",
+           login.c_str(),
+           inet_ntostring(user->GetCurrIP()).c_str(),
+           inet_ntostring(sip).c_str());
     SendError(sip, sport, protoVer, "÷ÁÛ ÌÏÇÉΠÕÖÅ ÉÓÐÏÌØÚÕÅÔÓÑ!");
     ip2user.erase(it);
     return 0;
index d0f6b5ac271691a6cad1b5c8186a8aaf6088a69d..08fd65128d835839cffbae170144d99014a06529 100644 (file)
@@ -49,6 +49,7 @@
 #include "stg/blowfish.h"
 #include "stg/logger.h"
 #include "stg/utime.h"
+#include "stg/logger.h"
 
 extern "C" PLUGIN * GetPlugin();
 
@@ -358,12 +359,12 @@ private:
 
     std::map<std::string, int> packetTypes;
 
-    STG_LOGGER &        WriteServLog;
-
     uint32_t            enabledDirs;
 
     DEL_USER_NOTIFIER   onDelUserNotifier;
 
+    PLUGIN_LOGGER       logger;
+
     friend class UnauthorizeUser;
 };
 //-----------------------------------------------------------------------------
index 481862dd23db24a6199c8edad24bf685cb8f256e..f9412802de25c739eee8a186b6f7c0838a600cbf 100644 (file)
@@ -10,7 +10,8 @@ SRCS = ./cap_nf.cpp
 
 LIBS += $(LIB_THREAD)
 
-STGLIBS = common
+STGLIBS = common \
+          logger
 
 include ../../Makefile.in
 
index 51ba49546d26fb7a4d8c9ee3be18b9be1b9750ac..8c84885fa186f0a78ff56ab2a028272262bf2824 100644 (file)
@@ -65,7 +65,8 @@ NF_CAP::NF_CAP()
       portU(0),
       sockTCP(-1),
       sockUDP(-1),
-      errorStr()
+      errorStr(),
+      logger(GetPluginLogger(GetStgLogger(), "cap_nf"))
 {
 }
 
index 43d6e0987a77521b82d7b92691e970ccf39ba56a..bf45cfea8b6dd64e56a0682621d8c9a5c8984184 100644 (file)
@@ -37,6 +37,7 @@ $Author: faust $
 #include "stg/os_int.h"
 #include "stg/plugin.h"
 #include "stg/module_settings.h"
+#include "stg/logger.h"
 
 #define VERSION "CAP_NF v. 0.4"
 #define START_POS 40
@@ -122,6 +123,7 @@ private:
     int sockTCP;
     int sockUDP;
     mutable std::string errorStr;
+    PLUGIN_LOGGER logger;
 
     static void * RunUDP(void *);
     static void * RunTCP(void *);
index 48e24826c8132415d005fceadfbd569d5c60eff3..555ec8b18a5f9ef55ba4fed8563f6698e3e8e627 100644 (file)
@@ -10,7 +10,8 @@ SRCS = ./divert_cap.cpp
 
 LIBS += $(LIB_THREAD)
 
-STGLIBS = common
+STGLIBS = common \
+          logger
 
 include ../../Makefile.in
 
index 5cf5358fafe2f966a8dfb8218af5f9abe56898f7..c50b497447d2a3a3cb08e011a1fb602695e85950 100644 (file)
@@ -86,7 +86,8 @@ DIVERT_CAP::DIVERT_CAP()
       thread(),
       nonstop(false),
       isRunning(false),
-      traffCnt(NULL)
+      traffCnt(NULL),
+      logger(GetPluginLogger(GetStgLogger(), "cap_divert"))
 {
 }
 //-----------------------------------------------------------------------------
index 912b5a149814db83382b2788bdd88e20534cfd5c..25fd29c24cba2079ed4d413b6e0930cafc74aad7 100644 (file)
@@ -33,6 +33,7 @@ $Date: 2009/06/23 11:32:27 $
 
 #include "stg/plugin.h"
 #include "stg/module_settings.h"
+#include "stg/logger.h"
 
 class USERS;
 class TARIFFS;
@@ -87,6 +88,8 @@ private:
     bool                isRunning;
 
     TRAFFCOUNTER *      traffCnt;
+
+    PLUGIN_LOGGER       logger;
 };
 //-----------------------------------------------------------------------------
 
index d108789680c85a17e274c0943d0d79ba9c1541bf..aeb77636b65b2577a1ee649360ed682108d26981 100644 (file)
@@ -10,7 +10,8 @@ SRCS = ./ether_cap.cpp
 
 LIBS += $(LIB_THREAD)
 
-STGLIBS = common
+STGLIBS = common \
+          logger
 
 include ../../Makefile.in
 
index 247051114511f74801fab94dc600cc07e8597428..4e9fa0ffc9b258405ebfdbc7bffdf6c2eeed1ea4 100644 (file)
@@ -125,7 +125,8 @@ BPF_CAP::BPF_CAP()
       isRunning(false),
       capSock(-1),
       settings(),
-      traffCnt(NULL)
+      traffCnt(NULL),
+      logger(GetPluginLogger(GetStgLogger(), "cap_ether"))
 {
 }
 //-----------------------------------------------------------------------------
index ad9ff9f15ae817f7754dff0d0dc8a6ff7869f27b..0a00cb045babf5bb7ca1324ffbe9ffada6dfde6d 100644 (file)
@@ -35,6 +35,7 @@
 #include "stg/os_int.h"
 #include "stg/plugin.h"
 #include "stg/module_settings.h"
+#include "stg/logger.h"
 
 extern "C" PLUGIN * GetPlugin();
 
@@ -135,6 +136,8 @@ private:
     MODULE_SETTINGS       settings;
 
     TRAFFCOUNTER *        traffCnt;
+
+    PLUGIN_LOGGER         logger;
 };
 //-----------------------------------------------------------------------------
 
index 873ba6f06d9869d3d5741ecc0750bfeafa06990a..c89ea6530d9896d02d8a8155166b739f98e6b749 100644 (file)
@@ -10,7 +10,8 @@ SRCS = ./ether_cap.cpp
 
 LIBS += $(LIB_THREAD)
 
-STGLIBS = common
+STGLIBS = common \
+          logger
 
 include ../../Makefile.in
 
index 093aea7231d425d9666a53a63cec3d15d83e637f..f620c8027be96fba30024ed330cd48a4eb1e19f5 100644 (file)
@@ -78,7 +78,8 @@ ETHER_CAP::ETHER_CAP()
       nonstop(false),
       isRunning(false),
       capSock(-1),
-      traffCnt(NULL)
+      traffCnt(NULL),
+      logger(GetPluginLogger(GetStgLogger(), "cap_ether"))
 {
 }
 //-----------------------------------------------------------------------------
index 44c4ae7e7e83cbabf844a94e0ec90360c975b709..c8de55226811a92f9ae71e3b3b52268bd47b6e4c 100644 (file)
@@ -32,6 +32,7 @@
 
 #include "stg/plugin.h"
 #include "stg/module_settings.h"
+#include "stg/logger.h"
 
 class USERS;
 class TARIFFS;
@@ -79,6 +80,8 @@ private:
     int                 capSock;
 
     TRAFFCOUNTER *      traffCnt;
+
+    PLUGIN_LOGGER       logger;
 };
 //-----------------------------------------------------------------------------
 
index 548f589c62825de49af45c5fe054ddfa11815ffc..48dc3449cc23ad41ec600a0447ae5770961bb79a 100644 (file)
@@ -11,7 +11,8 @@ SRCS = ./ipq_cap.cpp \
 
 LIBS += $(LIB_THREAD)
 
-STGLIBS = common
+STGLIBS = common \
+          logger
 
 include ../../Makefile.in
 
index 1dc22b4cff9e330579a902c693fe83e1bf05ec12..6cf5b0f94559eaa8c0b1d8156936aa058868a2d4 100644 (file)
@@ -63,7 +63,8 @@ IPQ_CAP::IPQ_CAP()
       isRunning(false),
       capSock(-1),
       traffCnt(NULL),
-      buf()
+      buf(),
+      logger(GetPluginLogger(GetStgLogger(), "cap_ipq"))
 {
 memset(buf, 0, BUFSIZE);
 }
index 7c78da8935345c417d80be6511da1a2dc00ad3c7..8b524d93ba564e878846570ce95a1753f9e21275 100644 (file)
@@ -26,6 +26,7 @@
 #include "stg/plugin.h"
 #include "stg/module_settings.h"
 #include "stg/os_int.h"
+#include "stg/logger.h"
 
 #define BUFSIZE     (256)
 #define PAYLOAD_LEN (96)
@@ -76,6 +77,8 @@ private:
 
     TRAFFCOUNTER * traffCnt;
     unsigned char buf[BUFSIZE];
+
+    PLUGIN_LOGGER logger;
 };
 
 #endif
index 56a188f1cbb2aa8bb1af2cef1b9320de81a8dd8f..682c5268c8fe6f5d3b431c5282a4eda4976eea86 100644 (file)
@@ -96,7 +96,8 @@ RPC_CONFIG::RPC_CONFIG()
       tid(),
       cookies(),
       dayFee(0),
-      dirNames()
+      dirNames(),
+      logger(GetPluginLogger(GetStgLogger(), "conf_rpc"))
 {
 }
 
index 8525f8890adf7cae6fc1f36787281495f8d28c65..a58773a14022af6086f1dba4d90e99f08bd7b291 100644 (file)
@@ -16,6 +16,7 @@
 #include "stg/plugin.h"
 #include "stg/admin_conf.h"
 #include "stg/module_settings.h"
+#include "stg/logger.h"
 
 #define RPC_CONFIG_VERSION "Stargazer RPC v. 0.2"
 
@@ -55,7 +56,7 @@ struct ADMIN_INFO
     PRIV        priviledges;
 };
 
-class RPC_CONFIG :public PLUGIN
+class RPC_CONFIG : public PLUGIN
 {
 public:
     RPC_CONFIG();
@@ -111,6 +112,7 @@ private:
              ADMIN_INFO>    cookies;
     size_t                  dayFee;
     std::vector<std::string> dirNames;
+    PLUGIN_LOGGER           logger;
 };
 
 #endif
index 07c319a0c9e0cf0849cee2853db291192692bbab..0addee63b49e8b03af1d21b0b228ac2f7285f916 100644 (file)
@@ -86,7 +86,7 @@ else
     }
 }
 //-----------------------------------------------------------------------------
-CONFIGPROTO::CONFIGPROTO()
+CONFIGPROTO::CONFIGPROTO(PLUGIN_LOGGER & l)
     : answerList(),
       requestList(),
       adminIP(0),
@@ -96,7 +96,7 @@ CONFIGPROTO::CONFIGPROTO()
       nonstop(true),
       state(0),
       currAdmin(NULL),
-      WriteServLog(GetStgLogger()),
+      logger(l),
       listenSocket(-1),
       parserGetServInfo(),
       parserGetUsers(),
@@ -144,7 +144,7 @@ xmlParser = XML_ParserCreate(NULL);
 
 if (!xmlParser)
     {
-    WriteServLog("Couldn't allocate memory for parser.");
+    logger("Couldn't allocate memory for parser.");
     exit(1);
     }
 
@@ -187,7 +187,7 @@ while(nonstop)
 
     if (XML_Parse(xmlParser, (*n).c_str(), len, done) == XML_STATUS_ERROR)
         {
-        WriteServLog("Invalid configuration request");
+        logger("Invalid configuration request");
         printfd(__FILE__, "Parse error at line %d:\n%s\n",
            XML_GetCurrentLineNumber(xmlParser),
            XML_ErrorString(XML_GetErrorCode(xmlParser)));
index 15809c3c7fd9a6e9848b505691e230c64930f862..20e38d9d05cf260c2573912629e3e5a731acbe0c 100644 (file)
@@ -52,7 +52,7 @@
 //-----------------------------------------------------------------------------
 class CONFIGPROTO {
 public:
-    CONFIGPROTO();
+    CONFIGPROTO(PLUGIN_LOGGER & l);
     ~CONFIGPROTO();
 
     void            SetPort(uint16_t port);
@@ -93,7 +93,7 @@ private:
     bool                        nonstop;
     int                         state;
     ADMIN *                     currAdmin;
-    STG_LOGGER &                WriteServLog;
+    PLUGIN_LOGGER &             logger;
 
     int                         listenSocket;
 
index c0b7b325ba8659123ea9f4d2224ef6bf9cc71029..5e69984894c846b801d88babcd2698cbda7693cb 100644 (file)
@@ -278,7 +278,7 @@ if (err)
     {
     if (send(sock, ERR_HEADER, sizeof(ERR_HEADER) - 1, 0) < 0)
         {
-        WriteServLog("send ERR_HEADER error in SendHdrAnswer.");
+        logger("send ERR_HEADER error in SendHdrAnswer.");
         return -1;
         }
     }
@@ -286,7 +286,7 @@ else
     {
     if (send(sock, OK_HEADER, sizeof(OK_HEADER) - 1, 0) < 0)
         {
-        WriteServLog("send OK_HEADER error in SendHdrAnswer.");
+        logger("send OK_HEADER error in SendHdrAnswer.");
         return -1;
         }
     }
@@ -337,7 +337,7 @@ int CONFIGPROTO::SendLoginAnswer(int sock)
 {
 if (send(sock, OK_LOGIN, sizeof(OK_LOGIN) - 1, 0) < 0)
     {
-    WriteServLog("Send OK_LOGIN error in SendLoginAnswer.");
+    logger("Send OK_LOGIN error in SendLoginAnswer.");
     return -1;
     }
 return 0;
@@ -408,7 +408,7 @@ if (err)
     {
     if (send(sock, ERR_LOGINS, sizeof(ERR_LOGINS) - 1, 0) < 0)
         {
-        WriteServLog("send ERR_LOGIN error in SendLoginAnswer.");
+        logger("send ERR_LOGIN error in SendLoginAnswer.");
         return -1;
         }
     }
@@ -416,7 +416,7 @@ else
     {
     if (send(sock, OK_LOGINS, sizeof(OK_LOGINS) - 1, 0) < 0)
         {
-        WriteServLog("send OK_LOGINS error in SendLoginSAnswer.");
+        logger("send OK_LOGINS error in SendLoginSAnswer.");
         return -1;
         }
     }
@@ -537,6 +537,6 @@ answerList.push_back(s);
 //-----------------------------------------------------------------------------
 void CONFIGPROTO::WriteLogAccessFailed(uint32_t ip)
 {
-WriteServLog("Admin's connect failed. IP %s", inet_ntostring(ip).c_str());
+logger("Admin's connect failed. IP %s", inet_ntostring(ip).c_str());
 }
 //-----------------------------------------------------------------------------
index ea71a117b7bb925c1e753d00cf3665d5aea1c962..78c45d72402254ffa67bc4a11b61767ffbcf8883 100644 (file)
@@ -61,7 +61,8 @@ STG_CONFIG::STG_CONFIG()
       thread(),
       nonstop(false),
       isRunning(false),
-      config(),
+      logger(GetPluginLogger(GetStgLogger(), "conf_sg")),
+      config(logger),
       users(NULL),
       admins(NULL),
       tariffs(NULL),
index cdce9668bf6931c34ecbdf622b31cbf678e3ff28..7e3ae69b9ab55b5b5d5feb5af421be8852a377d2 100644 (file)
@@ -7,6 +7,7 @@
 
 #include "stg/plugin.h"
 #include "stg/store.h"
+#include "stg/logger.h"
 #include "configproto.h"
 
 extern "C" PLUGIN * GetPlugin();
@@ -59,6 +60,7 @@ private:
     pthread_t           thread;
     bool                nonstop;
     bool                isRunning;
+    PLUGIN_LOGGER       logger;
     CONFIGPROTO         config;
     USERS *             users;
     ADMINS *            admins;
index f0868e1225d21bd5a333094c412e9e4856d75861..00bb362d98151a56b7354cca9dd7922ae03ec2c1 100644 (file)
@@ -74,7 +74,8 @@ PING::PING()
       ChgCurrIPNotifierList(),
       ChgIPNotifierList(),
       onAddUserNotifier(*this),
-      onDelUserNotifier(*this)
+      onDelUserNotifier(*this),
+      logger(GetPluginLogger(GetStgLogger(), "ping"))
 {
 pthread_mutex_init(&mutex, NULL);
 }
index 6c31eb9589facd72454d132b07fc027b7bc9d456..421b83da5ae3232115be566fdb834dfda3546008 100644 (file)
@@ -19,6 +19,7 @@
 #include "stg/user_ips.h"
 #include "stg/pinger.h"
 #include "stg/users.h"
+#include "stg/logger.h"
 
 extern "C" PLUGIN * GetPlugin();
 
@@ -148,6 +149,8 @@ private:
 
     ADD_USER_NONIFIER_PING onAddUserNotifier;
     DEL_USER_NONIFIER_PING onDelUserNotifier;
+
+    PLUGIN_LOGGER logger;
 };
 //-----------------------------------------------------------------------------
 
index 480e6f16252aaab31d279a02e5e0ce43971294cf..6fb4d2f94577cdfc8afc7b76d1314632e2664fc0 100644 (file)
@@ -136,7 +136,8 @@ RADIUS::RADIUS()
       thread(),
       mutex(),
       sock(-1),
-      packet()
+      packet(),
+      logger(GetPluginLogger(GetStgLogger(), "radius"))
 {
 InitEncrypt(&ctx, "");
 }
index 92cfcab2d157dd16f007b5c7fbf497034b261ea1..8281b1ae2f9e80e33b495749942665c5c38ab6c6 100644 (file)
@@ -47,6 +47,7 @@
 #include "stg/users.h"
 #include "stg/blowfish.h"
 #include "stg/rad_packets.h"
+#include "stg/logger.h"
 
 extern "C" PLUGIN * GetPlugin();
 
@@ -172,6 +173,7 @@ private:
 
     RAD_PACKET          packet;
 
+    PLUGIN_LOGGER       logger;
 };
 //-----------------------------------------------------------------------------
 
index 9e560a5d6062394baa90c3ef19b7dd24a5e8e64c..4ce51d65a803eb7c51b5c29f220a3ff5de9d0fa4 100644 (file)
@@ -181,7 +181,8 @@ REMOTE_SCRIPT::REMOTE_SCRIPT()
       mutex(),
       sock(0),
       onAddUserNotifier(*this),
-      onDelUserNotifier(*this)
+      onDelUserNotifier(*this),
+      logger(GetPluginLogger(GetStgLogger(), "rscript"))
 {
 pthread_mutex_init(&mutex, NULL);
 }
index 794c4c2b82e8c28e0f6524cc3d3fa548e9c4e013..6ee10c82c0170eea7fc535356f6bb3eb084ec2c0 100644 (file)
@@ -47,6 +47,7 @@
 #include "stg/users.h"
 #include "stg/blowfish.h"
 #include "stg/rs_packets.h"
+#include "stg/logger.h"
 #include "nrmap_parser.h"
 
 extern "C" PLUGIN * GetPlugin();
@@ -227,6 +228,8 @@ private:
     RS_ADD_USER_NONIFIER onAddUserNotifier;
     RS_DEL_USER_NONIFIER onDelUserNotifier;
 
+    PLUGIN_LOGGER       logger;
+
     friend class UpdateRouter;
     friend class DisconnectUser;
 };
index 551a28f1f09369d4c1b2cfc8e56cc078bf9701f6..c1352de2e51e9000bf065364d3e37b8f2083df59 100644 (file)
@@ -111,7 +111,8 @@ SMUX::SMUX()
       notifiers(),
       addUserNotifier(*this),
       delUserNotifier(*this),
-      addDelTariffNotifier(*this)
+      addDelTariffNotifier(*this),
+      logger(GetPluginLogger(GetStgLogger(), "smux"))
 {
 pthread_mutex_init(&mutex, NULL);
 
index adeb50af0e7cdb256d5c883303cda2ae42cc32ec..cc722511515edeec72c50737866459021b395146 100644 (file)
@@ -15,6 +15,7 @@
 #include "stg/module_settings.h"
 #include "stg/notifer.h"
 #include "stg/noncopyable.h"
+#include "stg/logger.h"
 
 #include "sensors.h"
 #include "tables.h"
@@ -179,6 +180,8 @@ private:
     ADD_USER_NOTIFIER addUserNotifier;
     DEL_USER_NOTIFIER delUserNotifier;
     ADD_DEL_TARIFF_NOTIFIER addDelTariffNotifier;
+
+    PLUGIN_LOGGER logger;
 };
 //-----------------------------------------------------------------------------
 
index 0149f07cec36e8f5b21be227f9279e9fa5ed8196..334824d979d7ecd57c34df52a12947118294f529 100644 (file)
@@ -341,7 +341,8 @@ FILES_STORE::FILES_STORE()
       version("file_store v.1.04"),
       storeSettings(),
       settings(),
-      mutex()
+      mutex(),
+      logger(GetPluginLogger(GetStgLogger(), "store_files"))
 {
 pthread_mutexattr_t attr;
 pthread_mutexattr_init(&attr);
index 91fb7fa80c2e9df371d9fc4dccbe90db7f7c3aed..2316398f683f4efb7cfee9827f80e3a2d4d8b164 100644 (file)
@@ -37,6 +37,7 @@
 #include "stg/store.h"
 #include "stg/conffiles.h"
 #include "stg/user_traff.h"
+#include "stg/logger.h"
 
 //-----------------------------------------------------------------------------
 extern "C" STORE * GetStore();
@@ -203,6 +204,8 @@ private:
     FILES_STORE_SETTINGS storeSettings;
     MODULE_SETTINGS settings;
     mutable pthread_mutex_t mutex;
+
+    PLUGIN_LOGGER logger;
 };
 //-----------------------------------------------------------------------------
 
index 3085981fc222ec6e82b9875c78f120d88b11522a..e5c7b0b16343ee2655b39f2a670bda0063f88a8a 100644 (file)
@@ -56,7 +56,8 @@ FIREBIRD_STORE::FIREBIRD_STORE()
       db(),
       mutex(),
       til(IBPP::ilConcurrency),
-      tlr(IBPP::lrWait)
+      tlr(IBPP::lrWait),
+      logger(GetPluginLogger(GetStgLogger(), "store_firebird"))
 {
 pthread_mutex_init(&mutex, NULL);
 }
index 58054cba724b0cc67c34738d8e4cd8f80cf8c253..38ff457d46a1df746829553bcd1b4f2d9f87c011 100644 (file)
@@ -37,6 +37,7 @@
 #include "stg/store.h"
 #include "stg/locker.h"
 #include "stg/ibpp.h"
+#include "stg/logger.h"
 
 struct ToLower {
     char operator() (char c) const  { return std::tolower(c); }
@@ -121,12 +122,13 @@ private:
 
     std::string version;
     mutable std::string strError;
-    mutable std::string db_server, db_database, db_user, db_password;
+    std::string db_server, db_database, db_user, db_password;
     MODULE_SETTINGS settings;
     mutable IBPP::Database db;
     mutable pthread_mutex_t mutex;
-    mutable IBPP::TIL til;
-    mutable IBPP::TLR tlr;
+    IBPP::TIL til;
+    IBPP::TLR tlr;
+    PLUGIN_LOGGER logger;
 
     int SaveStat(const USER_STAT & stat, const std::string & login, int year = 0, int month = 0) const;
 };
index 57c52a6b0b94cf9eb829e29fa3aac0a5a5662cdf..25a29798a4050ff475bc13caf046b210852f0356 100644 (file)
@@ -9,7 +9,8 @@ PROG = mod_store_mysql.so
 SRCS = ./mysql_store.cpp
 
 STGLIBS = common \
-         crypto
+         crypto \
+         logger
 
 MYSQL_CFLAGS = $(shell mysql_config --cflags)
 MYSQL_LDFLAGS = $(shell mysql_config --libs_r)
index 9d8f9c8348dfc5700c2473dd33d46922b90a91d8..8e04f5a5b847c128726a691a7650f3367efd1ed7 100644 (file)
@@ -157,7 +157,8 @@ MYSQL_STORE::MYSQL_STORE()
     : errorStr(),
       version("mysql_store v.0.67"),
       storeSettings(),
-      settings()
+      settings(),
+      logger(GetPluginLogger(GetStgLogger(), "store_mysql"))
 {
 };
 //-----------------------------------------------------------------------------
index d0d4f70d67b9ca592671e6b4fbdb1ca636454fd0..25cf5a3de62949acc85bbb43a3fa907a0130a4c5 100644 (file)
@@ -14,6 +14,7 @@
 #include "stg/module_settings.h"
 #include "stg/store.h"
 #include "stg/user_traff.h"
+#include "stg/logger.h"
 
 using namespace std;
 //-----------------------------------------------------------------------------
@@ -141,6 +142,8 @@ private:
     string                  version;
     MYSQL_STORE_SETTINGS    storeSettings;
     MODULE_SETTINGS         settings;
+
+    PLUGIN_LOGGER           logger;
 };
 //-----------------------------------------------------------------------------
 
index b59e45cd19e550ec8c74f46bbb7d15cc57e07380..0bd8f629771d74ebf7d13e125250853367564c63 100644 (file)
@@ -17,7 +17,8 @@ SRCS =        ./postgresql_store.cpp \
 
 STGLIBS = common \
          crypto \
-         locker
+         locker \
+         logger
 
 PG_CFLAGS = $(shell pg_config --includedir)
 PG_LDFLAGS = $(shell pg_config --libdir)
index 073fccab5d92ce84e8a46c5dd6d25e7973e6914b..7c79baff6b6df487391136caf3356d9f94db4b11 100644 (file)
@@ -70,7 +70,8 @@ POSTGRESQL_STORE::POSTGRESQL_STORE()
       mutex(),
       version(0),
       retries(3),
-      connection(NULL)
+      connection(NULL),
+      logger(GetPluginLogger(GetStgLogger(), "store_postgresql"))
 {
 pthread_mutex_init(&mutex, NULL);
 }
index edba035927bac2e9dbdb7c0cd340898bea46ddf5..a30d3852d97a95ae6ab0078f0c2f2b22ec5fd992 100644 (file)
@@ -36,6 +36,7 @@
 #include <map>
 
 #include "stg/store.h"
+#include "stg/logger.h"
 
 // Minimal DB version is 5
 // Recommended DB version is 6 (support FreeMb logging on disconnects)
@@ -158,6 +159,8 @@ private:
     int retries;
 
     PGconn * connection;
+
+    PLUGIN_LOGGER logger;
 };
 
 extern const volatile time_t stgTime;
index 9fe1487842188e29699d3e0deaab8c01e7730b17..2c9c93fc2951fc77ba75e3c9203587ad0c6b44e8 100644 (file)
@@ -26,6 +26,7 @@ private:
 class STG_LOGGER
 {
 friend STG_LOGGER & GetStgLogger();
+friend class PLUGIN_LOGGER;
 
 public:
     ~STG_LOGGER();
@@ -43,5 +44,19 @@ private:
     pthread_mutex_t mutex;
 };
 //-----------------------------------------------------------------------------
+class PLUGIN_LOGGER : private STG_LOGGER
+{
+friend PLUGIN_LOGGER GetPluginLogger(const STG_LOGGER & logger, const std::string & pluginName);
+
+public:
+    PLUGIN_LOGGER(const PLUGIN_LOGGER & rhs);
+    void operator()(const char * fmt, ...);
+
+private:
+    PLUGIN_LOGGER(const STG_LOGGER & logger, const std::string & pn);
+    std::string pluginName;
+};
+
+PLUGIN_LOGGER GetPluginLogger(const STG_LOGGER & logger, const std::string & pluginName);
 
 #endif //STG_LOGGER_H
index d85581991b0c5cfea7da97c2f52fb59a7890adf0..3bbd33674f6c640d86606f4b7074680dba758879 100644 (file)
@@ -93,3 +93,34 @@ snprintf(s, 32, "%d-%s%d-%s%d %s%d:%s%d:%s%d",
 return s;
 }
 //-----------------------------------------------------------------------------
+PLUGIN_LOGGER::PLUGIN_LOGGER(const STG_LOGGER & logger, const std::string & pn)
+    : STG_LOGGER(),
+      pluginName(pn)
+{
+    SetLogFileName(logger.fileName);
+}
+//-----------------------------------------------------------------------------
+PLUGIN_LOGGER::PLUGIN_LOGGER(const PLUGIN_LOGGER & rhs)
+    : STG_LOGGER(),
+      pluginName(rhs.pluginName)
+{
+    SetLogFileName(fileName);
+}
+//-----------------------------------------------------------------------------
+void PLUGIN_LOGGER::operator()(const char * fmt, ...)
+{
+char buff[2029];
+
+va_list vl;
+va_start(vl, fmt);
+vsnprintf(buff, sizeof(buff), fmt, vl);
+va_end(vl);
+
+STG_LOGGER::operator()("[%s] %s", pluginName.c_str(), buff);
+}
+//-----------------------------------------------------------------------------
+PLUGIN_LOGGER GetPluginLogger(const STG_LOGGER & logger, const std::string & pluginName)
+{
+return PLUGIN_LOGGER(logger, pluginName);
+}
+//-----------------------------------------------------------------------------