[Erp5-report] r45935 arnaud.fontaine - /erp5/trunk/utils/erp5.utils.benchmark/src/erp5/util...

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Jun 21 16:54:25 CEST 2011


Author: arnaud.fontaine
Date: Tue Jun 21 16:54:25 2011
New Revision: 45935

URL: http://svn.erp5.org?rev=45935&view=rev
Log:
Fix logger

Modified:
    erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/benchmark.py
    erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/performance_tester.py
    erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/scalability_tester.py

Modified: erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/benchmark.py
URL: http://svn.erp5.org/erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/benchmark.py?rev=45935&r1=45934&r2=45935&view=diff
==============================================================================
--- erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/benchmark.py [utf8] (original)
+++ erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/benchmark.py [utf8] Tue Jun 21 16:54:25 2011
@@ -185,11 +185,14 @@ class BenchmarkResult(object):
     self._current_suite_name = None
     self._result_idx_checkpoint_list = []
     self.label_list = []
-    self.logger = self._getLogger()
+    self._logger = None
 
-  def _getLogger(self):
-    logging.basicConfig(stream=self.log_file, level=self._log_level)
-    return logging.getLogger('erp5.utils.benchmark')
+  def getLogger(self):
+    if not self._logger:
+      logging.basicConfig(stream=self.log_file, level=self._log_level)
+      return logging.getLogger('erp5.utils.benchmark')
+
+    return self._logger
 
   def __enter__(self):
     return self
@@ -214,7 +217,7 @@ class BenchmarkResult(object):
     if self._first_iteration:
       self.label_list = self.getLabelList()
 
-    self.logger.debug("RESULTS: %s" % self.result_list)
+    self.getLogger().debug("RESULTS: %s" % self.result_list)
     self.result_list = []
     self._first_iteration = False
     self._suite_idx = 0
@@ -251,22 +254,22 @@ class BenchmarkResult(object):
     return True
 
 class CSVBenchmarkResult(BenchmarkResult):
-  def __init__(self, argument_namespace, nb_users, user_index):
-    filename_prefix = self.getFilenamePrefix()
+  def __init__(self, *args, **kwargs):
+    super(CSVBenchmarkResult, self).__init__(*args, **kwargs)
+
+    filename_prefix = self._getFilenamePrefix()
 
     self.result_filename = "%s.csv" % filename_prefix
     self.result_filename_path = os.path.join(
-      argument_namespace.report_directory, self.result_filename)
+      self._argument_namespace.report_directory, self.result_filename)
 
     self._log_filename = "%s.log" % filename_prefix
     self._log_filename_path = os.path.join(
-      argument_namespace.report_directory, self._log_filename)
+      self._argument_namespace.report_directory, self._log_filename)
 
     self.log_file = open(self._log_filename_path, 'w')
 
-    super(CSVBenchmarkResult, self).__init__()
-
-  def getFilenamePrefix(self):
+  def _getFilenamePrefix(self):
     max_nb_users = isinstance(self._argument_namespace.users, int) and \
         self._argument_namespace.users or self._argument_namespace.users[1]
 
@@ -301,6 +304,7 @@ class CSVBenchmarkResult(BenchmarkResult
 
     if exc_type:
       msg = "An error occured, see: %s" % self._log_filename_path
+      self.getLogger().error("%s: %s\n%s" % (exc_type, exc_value, traceback))
       if isinstance(exc_type, StopIteration):
         raise StopIteration, msg
       else:
@@ -422,7 +426,7 @@ class BenchmarkProcess(multiprocessing.P
                                          self._nb_users,
                                          self._user_index)
 
-    self._logger = result_instance.logger
+    self._logger = result_instance.getLogger()
 
     if self._argument_namespace.repeat != -1:
       signal.signal(signal.SIGTERM, self.stopGracefully)

Modified: erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/performance_tester.py
URL: http://svn.erp5.org/erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/performance_tester.py?rev=45935&r1=45934&r2=45935&view=diff
==============================================================================
--- erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/performance_tester.py [utf8] (original)
+++ erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/performance_tester.py [utf8] Tue Jun 21 16:54:25 2011
@@ -274,9 +274,6 @@ class PerformanceTester(object):
       error_message_set, exit_status = self._run_constant(
         self._argument_namespace.users)
 
-
-    import pdb
-    pdb.Pdb(stdin=open('/dev/stdin', 'r+'), stdout=open('/dev/stdout', 'r+')).set_trace()   
     self.postRun(error_message_set)
     return error_message_set, exit_status
 

Modified: erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/scalability_tester.py
URL: http://svn.erp5.org/erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/scalability_tester.py?rev=45935&r1=45934&r2=45935&view=diff
==============================================================================
--- erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/scalability_tester.py [utf8] (original)
+++ erp5/trunk/utils/erp5.utils.benchmark/src/erp5/utils/benchmark/scalability_tester.py [utf8] Tue Jun 21 16:54:25 2011
@@ -34,7 +34,7 @@ class CSVScalabilityBenchmarkResult(CSVB
   def flush(self):
     super(CSVScalabilityBenchmarkResult, self).flush()
     self._argument_namespace.notify_method(self._result_filename,
-                                           self._result.tell())
+                                           self._result_file.tell())
 
 from erp5.utils.benchmark.performance_tester import PerformanceTester
 



More information about the Erp5-report mailing list