Changeset 1d9338a in nscp for modules/FileLogger


Ignore:
Timestamp:
05/23/05 21:24:32 (8 years ago)
Author:
Michael Medin <michael@…>
Branches:
master, 0.4.0, 0.4.1, 0.4.2, stable
Children:
6654022
Parents:
af5bc4b
Message:

2005-05-23 MickeM

+ Added obfuscated password support
+ Added some more debug info on commands (returncode, and input args)
+ Added some more comments ot the NSC.ini
+ Added central password "override"
+ Added central "host override"
+ Fixed bug with external commands always getting WARNING state

2005-05-22 MickeM

+ Added debug outout for command
+ Added timestamps for log-to-file (date_mask to configure format)
+ Added support for "no password" with check_nt
+ Added log of bad password on NSClient requests.

  • Some threading issues fixed (I hate threading :)
Location:
modules/FileLogger
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • modules/FileLogger/FileLogger.cpp

    rcea178b r1d9338a  
    44#include "stdafx.h" 
    55#include "FileLogger.h" 
     6 
     7#include <sys/timeb.h> 
     8#include <time.h> 
    69 
    710FileLogger gFileLogger; 
     
    1821} 
    1922 
     23std::string FileLogger::getFileName() 
     24{ 
     25  if (file_.empty()) { 
     26    file_ = NSCModuleHelper::getSettingsString(LOG_SECTION_TITLE, LOG_FILENAME, LOG_FILENAME_DEFAULT); 
     27    if (file_.find("\\") == std::string::npos) 
     28      file_ = NSCModuleHelper::getBasePath() + "\\" + file_; 
     29  } 
     30  return file_; 
     31} 
     32 
    2033bool FileLogger::loadModule() { 
    21   file_ = NSCModuleHelper::getSettingsString(LOG_SECTION_TITLE, LOG_FILENAME, LOG_FILENAME_DEFAULT); 
     34  _tzset(); 
     35  getFileName(); 
     36  format_ = NSCModuleHelper::getSettingsString(LOG_SECTION_TITLE, LOG_DATEMASK, LOG_DATEMASK_DEFAULT); 
    2237  return true; 
    2338} 
     
    2641} 
    2742std::string FileLogger::getModuleName() { 
    28   return "File logger: " + NSCModuleHelper::getSettingsString(LOG_SECTION_TITLE, LOG_FILENAME, LOG_FILENAME_DEFAULT); 
     43  return "File logger: " + getFileName(); 
    2944} 
    3045NSCModuleWrapper::module_version FileLogger::getModuleVersion() { 
     
    3954} 
    4055void FileLogger::handleMessage(int msgType, char* file, int line, char* message) { 
     56  char buffer[64]; 
    4157  std::ofstream stream(file_.c_str(), std::ios::app); 
    42   stream << NSCHelper::translateMessageType(msgType) << ":" << file << ":" << line << ": " << message << std::endl; 
     58  __time64_t ltime; 
     59  _time64( &ltime ); 
     60  struct tm *today = _localtime64( &ltime ); 
     61  if (today) { 
     62    int len = strftime(buffer, 63, format_.c_str(), today); 
     63    if ((len < 1)||(len > 64)) 
     64      strncpy(buffer, "???", 63); 
     65    else 
     66      buffer[len] = 0; 
     67  } else { 
     68    strncpy(buffer, "???", 63); 
     69  } 
     70  stream << buffer << ": " << NSCHelper::translateMessageType(msgType) << ":" << file << ":" << line << ": " << message << std::endl; 
    4371} 
    4472 
  • modules/FileLogger/FileLogger.h

    ra0528c4 r1d9338a  
    66private: 
    77  std::string file_; 
     8  std::string format_; 
    89 
    910public: 
     
    1920  void handleMessage(int msgType, char* file, int line, char* message); 
    2021  int handleCommand(char* command, char **argument, char *returnBuffer, int returnBufferLen); 
     22 
     23 
     24  std::string getFileName(); 
    2125}; 
Note: See TracChangeset for help on using the changeset viewer.