(file) Return to StressTestControllerMain.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / test / StressTestController

Diff for /pegasus/test/StressTestController/StressTestControllerMain.cpp between version 1.1.2.1 and 1.1.2.2

version 1.1.2.1, 2006/04/18 03:15:28 version 1.1.2.2, 2006/04/24 19:15:09
Line 41 
Line 41 
 #include "StressTestController.h" #include "StressTestController.h"
 #include <Pegasus/Common/TimeValue.h> #include <Pegasus/Common/TimeValue.h>
 #include <Pegasus/Common/FileSystem.h> #include <Pegasus/Common/FileSystem.h>
   
 //#define DEBUG //#define DEBUG
 #include <time.h> #include <time.h>
 //Windows  
 #ifdef PEGASUS_PLATFORM_WIN32_IX86_MSVC  //
   // For Windows
   //
   #ifdef PEGASUS_OS_TYPE_WINDOWS
 #include <windows.h>     /* for DWORD etc. */ #include <windows.h>     /* for DWORD etc. */
 typedef DWORD pid_t;     /* getpid() and others */ typedef DWORD pid_t;     /* getpid() and others */
 #include <process.h> #include <process.h>
Line 62 
Line 66 
 /** /**
  * Message resource name  * Message resource name
  */  */
 static const char MSG_PATH []                                = "pegasus/pegasusCLI";  
  
 static const char REQUIRED_ARGS_MISSING []                   = static const char REQUIRED_ARGS_MISSING []                   =
                      "Required arguments missing.";                      "Required arguments missing.";
Line 101 
Line 104 
  
     StressTestControllerCommand    command=StressTestControllerCommand();     StressTestControllerCommand    command=StressTestControllerCommand();
  
     // generate log files and PID files      //
       // Generate log files and PID files
       //
     if(!command.generateRequiredFileNames(strTime))     if(!command.generateRequiredFileNames(strTime))
     {     {
        cout<<StressTestControllerCommand::COMMAND_NAME<<"::Failed to generate required files for tests. "<<endl;          cout<<StressTestControllerCommand::COMMAND_NAME\
               <<"::Failed to generate required files for tests. "<<endl;
        command.removeUnusedFiles();        command.removeUnusedFiles();
        exit (Command::RC_ERROR);        exit (Command::RC_ERROR);
     }     }
Line 118 
Line 124 
        cout<<"Cannot get file "<<command.getStressTestLogFile()<<endl;        cout<<"Cannot get file "<<command.getStressTestLogFile()<<endl;
        command.removeUnusedFiles();        command.removeUnusedFiles();
        exit (Command::RC_ERROR);        exit (Command::RC_ERROR);
   
     }     }
     strftime(strTime,256,"%d/%m/%Y at %H:%M:%S\n",&tmTime);     strftime(strTime,256,"%d/%m/%Y at %H:%M:%S\n",&tmTime);
     log_file<<StressTestControllerCommand::COMMAND_NAME<<"::Initiated on "<<strTime<<endl;      log_file<<StressTestControllerCommand::COMMAND_NAME\
     log_file<<StressTestControllerCommand::COMMAND_NAME<<"::Process ID: "<<getpid()<<endl;          <<"::Initiated on "<<strTime<<endl;
       log_file<<StressTestControllerCommand::COMMAND_NAME\
           <<"::Process ID: "<<getpid()<<endl;
  
     MessageLoader::setPegasusMsgHomeRelative(argv[0]);  
     try     try
     {     {
         log_file<<StressTestControllerCommand::COMMAND_NAME;         log_file<<StressTestControllerCommand::COMMAND_NAME;
Line 144 
Line 149 
     {     {
         String msg(cfe.getMessage());         String msg(cfe.getMessage());
  
         log_file << StressTestControllerCommand::COMMAND_NAME << "::" << msg <<  endl;          log_file<< StressTestControllerCommand::COMMAND_NAME << "::" \
         cerr << StressTestControllerCommand::COMMAND_NAME << "::" << msg <<  endl;              << msg <<  endl;
           cerr<< StressTestControllerCommand::COMMAND_NAME << "::"\
               << msg <<  endl;
  
         if (msg.find(String("Unknown flag")) != PEG_NOT_FOUND)         if (msg.find(String("Unknown flag")) != PEG_NOT_FOUND)
         {         {
            MessageLoaderParms parms(ERR_OPTION_NOT_SUPPORTED_KEY,ERR_OPTION_NOT_SUPPORTED);  
               parms.msg_src_path = MSG_PATH;  
               cerr << StressTestControllerCommand::COMMAND_NAME <<               cerr << StressTestControllerCommand::COMMAND_NAME <<
                    ": " << MessageLoader::getMessage(parms) << endl;                  "::" << ERR_OPTION_NOT_SUPPORTED << endl;
               log_file<< StressTestControllerCommand::COMMAND_NAME <<               log_file<< StressTestControllerCommand::COMMAND_NAME <<
                    ": " << MessageLoader::getMessage(parms) << endl;                  "::" << ERR_OPTION_NOT_SUPPORTED << endl;
         }         }
         else         else
         {         {
            MessageLoaderParms parms(ERR_USAGE_KEY,ERR_USAGE);  
               parms.msg_src_path = MSG_PATH;  
            cerr << StressTestControllerCommand::COMMAND_NAME <<            cerr << StressTestControllerCommand::COMMAND_NAME <<
              ": " << MessageLoader::getMessage(parms) << endl;                  "::" << ERR_USAGE << endl;
            log_file << StressTestControllerCommand::COMMAND_NAME <<            log_file << StressTestControllerCommand::COMMAND_NAME <<
              ": " << MessageLoader::getMessage(parms) << endl;                  "::" << ERR_USAGE << endl;
         }         }
  
         log_file.close();         log_file.close();
Line 172 
Line 176 
     }     }
     catch(...)     catch(...)
     {     {
         log_file<<StressTestControllerCommand::COMMAND_NAME<<"::Unknown exception caught when setting commands."<<endl;          log_file<<StressTestControllerCommand::COMMAND_NAME<<
         cerr<<StressTestControllerCommand::COMMAND_NAME<<"::Unknown exception caught when setting commands."<<endl;              "::Unknown exception caught when setting commands."<<endl;
           cerr<<StressTestControllerCommand::COMMAND_NAME<<
               "::Unknown exception caught when setting commands."<<endl;
         log_file.close();         log_file.close();
         command.removeUnusedFiles();         command.removeUnusedFiles();
         exit (Command::RC_ERROR);         exit (Command::RC_ERROR);
Line 212 
Line 218 
        {        {
            // Check for file in default directory as well            // Check for file in default directory as well
            fileName = String::EMPTY;            fileName = String::EMPTY;
            fileName.append(command.pegasusRoot);  
            fileName.append(StressTestControllerCommand::DEFAULT_CFGDIR);            fileName.append(StressTestControllerCommand::DEFAULT_CFGDIR);
            fileName.append(filename);            fileName.append(filename);
  
Line 225 
Line 230 
               command.removeUnusedFiles();               command.removeUnusedFiles();
               exit (Command::RC_ERROR);               exit (Command::RC_ERROR);
            }            }
            log_file<<StressTestControllerCommand::COMMAND_NAME<<"::Using config file: "<<fileName<<endl;              log_file<<StressTestControllerCommand::COMMAND_NAME<<
                   "::Using config file: "<<fileName<<endl;
        }        }
        else        else
           {
           fileName = filename;           fileName = filename;
           }
  
        log_file<<StressTestControllerCommand::COMMAND_NAME<<"::Using config file: "<<fileName<<endl;          log_file<<StressTestControllerCommand::COMMAND_NAME<<
        cout<<StressTestControllerCommand::COMMAND_NAME<<"::Using config file: "<<fileName<<endl;              "::Using config file: "<<fileName<<endl;
           cout<<StressTestControllerCommand::COMMAND_NAME<<
              "::Using config file: "<<fileName<<endl;
     }     }
     else     else
     {     {
Line 239 
Line 249 
        // Use default file in default dir.        // Use default file in default dir.
        //        //
        fileName = String::EMPTY;        fileName = String::EMPTY;
        fileName.append(command.pegasusRoot);  
        fileName.append(StressTestControllerCommand::DEFAULT_CFGDIR);        fileName.append(StressTestControllerCommand::DEFAULT_CFGDIR);
        fileName.append(StressTestControllerCommand::FILENAME);        fileName.append(StressTestControllerCommand::FILENAME);
        //        //
Line 271 
Line 280 
        //        //
        if(useDefaults)        if(useDefaults)
        {        {
            log_file<<StressTestControllerCommand::COMMAND_NAME<<"::Using hard coded default config values."<<endl;              log_file<<StressTestControllerCommand::COMMAND_NAME<<
            cout<<StressTestControllerCommand::COMMAND_NAME<<"::Using hard coded default config values."<<endl;                  "::Using hard coded default config values."<<endl;
               cout<<StressTestControllerCommand::COMMAND_NAME<<
                   "::Using hard coded default config values."<<endl;
            command.getDefaultClients(log_file);            command.getDefaultClients(log_file);
        }        }
        else        else
Line 291 
Line 302 
     {     {
         String msg(e.getMessage());         String msg(e.getMessage());
  
         log_file << StressTestControllerCommand::COMMAND_NAME << ": " << msg <<  endl;          log_file << StressTestControllerCommand::COMMAND_NAME <<
         cerr << StressTestControllerCommand::COMMAND_NAME << ": " << msg <<  endl;              ": " << msg <<  endl;
           cerr << StressTestControllerCommand::COMMAND_NAME <<
               ": " << msg <<  endl;
         log_file.close();         log_file.close();
         command.removeUnusedFiles();         command.removeUnusedFiles();
         exit (Command::RC_ERROR);         exit (Command::RC_ERROR);
Line 301 
Line 314 
     catch(Exception& e )     catch(Exception& e )
     {     {
         String msg(e.getMessage());         String msg(e.getMessage());
         log_file << StressTestControllerCommand::COMMAND_NAME << "::" << msg <<  endl;          log_file << StressTestControllerCommand::COMMAND_NAME <<
         cerr << StressTestControllerCommand::COMMAND_NAME << "::Invalid Configuration ";              "::" << msg <<  endl;
           cerr << StressTestControllerCommand::COMMAND_NAME <<
               "::Invalid Configuration ";
         cerr << "in File: " << fileName <<  endl;         cerr << "in File: " << fileName <<  endl;
         cerr << msg <<  endl;         cerr << msg <<  endl;
         log_file.close();         log_file.close();
Line 312 
Line 327 
     catch(...)     catch(...)
     {     {
         // throw what was caught         // throw what was caught
         log_file<<StressTestControllerCommand::COMMAND_NAME<<"::Unknown exception caught when acquiring configuration."<<endl;          log_file<<StressTestControllerCommand::COMMAND_NAME<<
         cerr<<StressTestControllerCommand::COMMAND_NAME<<"::Unknown exception caught when acquiring configuration."<<endl;              "::Unknown exception caught when acquiring configuration."<<endl;
           cerr<<StressTestControllerCommand::COMMAND_NAME<<
               "::Unknown exception caught when acquiring configuration."<<endl;
         log_file.close();         log_file.close();
         command.removeUnusedFiles();         command.removeUnusedFiles();
         exit (Command::RC_ERROR);         exit (Command::RC_ERROR);
     }     }
  
     log_file << StressTestControllerCommand::COMMAND_NAME << "::Generating Client Commands"<<  endl;      log_file << StressTestControllerCommand::COMMAND_NAME <<
           "::Generating Client Commands"<<  endl;
     if(verboseEnabled)     if(verboseEnabled)
         cout << StressTestControllerCommand::COMMAND_NAME << "::Generating Client Commands"<<  endl;      {
           cout << StressTestControllerCommand::COMMAND_NAME <<
               "::Generating Client Commands"<<  endl;
       }
  
     //     //
     // TimeStamp     // TimeStamp
     //     //
     log_file<<StressTestControllerCommand::COMMAND_NAME<<"::Initiated on "<<strTime<<endl;      log_file<<StressTestControllerCommand::COMMAND_NAME<<
     log_file<<StressTestControllerCommand::COMMAND_NAME<<"::Process ID: "<<getpid()<<endl;          "::Initiated on "<<strTime<<endl;
     cout<<StressTestControllerCommand::COMMAND_NAME<<"::Initiated on "<<strTime<<endl;      log_file<<StressTestControllerCommand::COMMAND_NAME<<
     cout<<StressTestControllerCommand::COMMAND_NAME<<"::Process ID: "<<getpid()<<endl;          "::Process ID: "<<getpid()<<endl;
       cout<<StressTestControllerCommand::COMMAND_NAME<<
           "::Initiated on "<<strTime<<endl;
       cout<<StressTestControllerCommand::COMMAND_NAME<<
           "::Process ID: "<<getpid()<<endl;
  
     if(!command.generateClientCommands(log_file))     if(!command.generateClientCommands(log_file))
     {     {
        cerr << StressTestControllerCommand::COMMAND_NAME << "::Failed to Generate Client Commands."<<  endl;          cerr << StressTestControllerCommand::COMMAND_NAME <<
        log_file << StressTestControllerCommand::COMMAND_NAME << "::Failed to Generate Client Commands."<<  endl;              "::Failed to Generate Client Commands."<<  endl;
           log_file << StressTestControllerCommand::COMMAND_NAME <<
               "::Failed to Generate Client Commands."<<  endl;
        log_file.close();        log_file.close();
        command.removeUnusedFiles();        command.removeUnusedFiles();
        exit (Command::RC_ERROR);        exit (Command::RC_ERROR);
     }     }
   
     //     //
     // Getting current time     // Getting current time
     //     //
Line 348 
Line 374 
     strftime(strTime,256,"%d/%m/%Y at %H:%M:%S\n",&tmTime);     strftime(strTime,256,"%d/%m/%Y at %H:%M:%S\n",&tmTime);
     log_file << StressTestControllerCommand::COMMAND_NAME <<endl;     log_file << StressTestControllerCommand::COMMAND_NAME <<endl;
     log_file << "   Preparing to execute Clients on "<<strTime<<endl;     log_file << "   Preparing to execute Clients on "<<strTime<<endl;
   
     // Begin to run stress Tests     // Begin to run stress Tests
     rc = command.execute (cout, cerr);     rc = command.execute (cout, cerr);
   
     //     //
     // Getting current time after stress Tests are completed     // Getting current time after stress Tests are completed
     //     //
     tmTime = getCurrentActualTime();     tmTime = getCurrentActualTime();
   
     strftime(strTime,256,"%d/%m/%Y at %H:%M:%S\n",&tmTime);     strftime(strTime,256,"%d/%m/%Y at %H:%M:%S\n",&tmTime);
   
     //     //
     // Check overall status of tests     // Check overall status of tests
     //     //
Line 370 
Line 400 
        cout << StressTestControllerCommand::COMMAND_NAME;        cout << StressTestControllerCommand::COMMAND_NAME;
        cout << "::successfully completed on "<<strTime<<endl;        cout << "::successfully completed on "<<strTime<<endl;
     }     }
       cout <<"IMPORTANT: ";
       cout <<"Please check the Controller and the Client log file"
            <<endl;
       cout <<"           for individual errors which may or may not have caused"
            <<endl;
       cout <<"           a stress test failure. "<< endl;
       cout <<" Log Directory:"<<endl;
       cout <<"     "<<
           FileSystem::extractFilePath(command.getStressTestLogFile())<<endl;
       cout <<"\n Controller log: "<<
           FileSystem::extractFileName(command.getStressTestLogFile())<<endl;
       cout <<" Client log:     "<<
           FileSystem::extractFileName(command.getStressClientLogFile())<<endl;
     log_file.close();     log_file.close();
     exit (rc);     exit (rc);
     return rc;     return rc;
 }  } /* main */


Legend:
Removed from v.1.1.2.1  
changed lines
  Added in v.1.1.2.2

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2