test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Public Attributes
o2o.O2ORunMgr Class Reference
Inheritance diagram for o2o.O2ORunMgr:
o2o.O2OMgr

Public Member Functions

def __init__
 
def connect
 
def endJob
 
def executeJob
 
def log
 
def startJob
 
- Public Member Functions inherited from o2o.O2OMgr
def __init__
 
def getSession
 
def logger
 

Public Attributes

 end
 
 job_name
 
 session
 
 start
 
 verbose
 
- Public Attributes inherited from o2o.O2OMgr
 eng
 
 logger
 

Detailed Description

Definition at line 133 of file o2o.py.

Constructor & Destructor Documentation

def o2o.O2ORunMgr.__init__ (   self)

Definition at line 135 of file o2o.py.

136  def __init__( self ):
137  O2OMgr.__init__(self)
138  self.job_name = None
139  self.start = None
140  self.end = None
def __init__
Definition: o2o.py:135

Member Function Documentation

def o2o.O2ORunMgr.connect (   self,
  service,
  args 
)

Definition at line 148 of file o2o.py.

Referenced by Vispa.Gui.ZoomableScrollArea.ZoomableScrollArea.__init__(), Vispa.Views.PropertyView.BooleanProperty.__init__(), Vispa.Gui.FindDialog.FindDialog._addScript(), Vispa.Gui.FindDialog.FindDialog._addStringProperty(), Vispa.Main.Application.Application._connectSignals(), Vispa.Plugins.ConfigEditor.CodeTableView.CodeTableView._createItem(), Vispa.Gui.BoxContentDialog.BoxContentDialog.addButton(), Vispa.Gui.ToolBoxContainer.ToolBoxContainer.addWidget(), Vispa.Views.PropertyView.PropertyView.append(), Vispa.Views.PropertyView.PropertyView.appendAddRow(), Vispa.Main.Application.Application.createAction(), Vispa.Views.PropertyView.TextEditWithButtonProperty.createButton(), Vispa.Views.LineDecayView.LineDecayView.createLineDecayContainer(), Vispa.Views.PropertyView.TextEditWithButtonProperty.createLineEdit(), Vispa.Views.LineDecayView.LineDecayContainer.createObject(), Vispa.Views.PropertyView.TextEditWithButtonProperty.createTextEdit(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController.filterDialog(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController.find(), Vispa.Gui.PortWidget.PortWidget.mouseMoveEvent(), Vispa.Views.PropertyView.BooleanProperty.setChecked(), Vispa.Main.SplitterTab.SplitterTab.setController(), Vispa.Plugins.Browser.BrowserTab.BrowserTab.setController(), Vispa.Views.PropertyView.BooleanProperty.setReadOnly(), Vispa.Views.PropertyView.DropDownProperty.setReadOnly(), Vispa.Views.PropertyView.TextEditWithButtonProperty.setReadOnly(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController.setTab(), Vispa.Views.PropertyView.IntegerProperty.setValue(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController.switchCenterView(), Vispa.Plugins.EdmBrowser.EdmBrowserTabController.EdmBrowserTabController.updateViewMenu(), and Vispa.Plugins.ConfigEditor.ConfigEditorTabController.ConfigEditorTabController.updateViewMenu().

149  def connect( self, service, args ):
150  self.session = O2OMgr.getSession( self,service, args.auth )
151  self.verbose = args.verbose
152  if self.session is None:
153  return False
154  else:
155  return True
def connect
Definition: o2o.py:148
def o2o.O2ORunMgr.endJob (   self,
  status,
  log 
)

Definition at line 180 of file o2o.py.

References poly< T >::const_iterator.end, o2o.O2ORunMgr.end, svgfig.LineAxis.end, relativeConstraints.error, info(), o2o.O2ORun.job_name, o2o.O2ORunMgr.job_name, o2o.O2ORunMgr.start, and svgfig.LineAxis.start.

Referenced by o2o.O2ORunMgr.executeJob().

181  def endJob( self, status, log ):
182  self.end = datetime.now()
183  try:
184  run = O2ORun(job_name=self.job_name,start_time=self.start,end_time=self.end,status_code=status,log=log)
185  self.session.merge(run)
186  self.session.commit()
187  O2OMgr.logger( self ).info( 'Job %s ended.', self.job_name )
188  except sqlalchemy.exc.SQLAlchemyError as dberror:
189  O2OMgr.logger( self ).error( str(dberror) )
def endJob
Definition: o2o.py:180
static const TGPicture * info(bool iBackgroundIsBlack)
def o2o.O2ORunMgr.executeJob (   self,
  job_name,
  command 
)

Definition at line 190 of file o2o.py.

References HcalLutGenerator.endJob(), sistrip::EnsembleCalibrationLA.endJob(), HcalCableMapper.endJob(), SiStripDetVOffHandler.endJob(), EcalStatusAnalyzer.endJob(), PhiSymmetryCalibration_step2.endJob(), PhiSymmetryCalibration_step2_SM.endJob(), RawDataConverter.endJob(), CandPtrProjector.endJob(), CPUSpender.endJob(), EcalTPGParamReaderFromDB.endJob(), EcalMatacqAnalyzer.endJob(), SiStripDetVOffTkMapPlotter.endJob(), EcalPerEvtMatacqAnalyzer.endJob(), AlcaBeamSpotHarvester.endJob(), DTTPAnalyzer.endJob(), DTCalibMuonSelection.endJob(), AlignmentPrescaler.endJob(), LSNumberFilter.endJob(), EcalDigiDisplay.endJob(), SiStripQualityStatistics.endJob(), ObjectCounter< C >.endJob(), TkAlCaSkimTreeMerger.endJob(), EcalPnGraphs.endJob(), DTVDriftWriter.endJob(), DTVDriftSegmentCalibration.endJob(), SiStripDetVOffTrendPlotter.endJob(), CandidateTriggerObjectProducer.endJob(), popcon::PopConAnalyzer< S >.endJob(), AlcaBeamSpotFromDB.endJob(), SiPixelFedFillerWordEventNumber.endJob(), DTTTrigCorrectionFirst.endJob(), AlignmentStats.endJob(), WriteEcalMiscalibConstants.endJob(), WriteEcalMiscalibConstantsMC.endJob(), DTMapGenerator.endJob(), DTT0Correction.endJob(), DTTTrigCorrection.endJob(), DTTTrigOffsetCalibration.endJob(), HcalCalibrator.endJob(), SurveyDataConverter.endJob(), LaserDQM.endJob(), SubdetFEDSelector.endJob(), DTResidualCalibration.endJob(), ShallowTree.endJob(), PuppiProducer.endJob(), SiStripRegFEDSelector.endJob(), FilterTrackerOn.endJob(), SiStripLAProfileBooker.endJob(), AlCaElectronsTest.endJob(), MuonAlignmentPreFilter.endJob(), TkVoltageMapCreator.endJob(), DTTTrigWriter.endJob(), ValidationMisalignedTracker.endJob(), DTTPDeadWriter.endJob(), EcalIsolatedParticleCandidateProducer.endJob(), DTNoiseCalibration.endJob(), DTT0Calibration.endJob(), EcalPedHists.endJob(), DTT0CalibrationNew.endJob(), miscalibExample.endJob(), LaserAlignmentT0Producer.endJob(), BooleanFlagFilter.endJob(), IsolatedParticlesGeneratedJets.endJob(), DTVDriftCalibration.endJob(), EcalABAnalyzer.endJob(), SimAnalyzerMinbias.endJob(), EcalPerEvtLaserAnalyzer.endJob(), DTTTrigCalibration.endJob(), SurveyDBUploader.endJob(), AlCaDiJetsProducer.endJob(), ECALRegFEDSelector.endJob(), EcalTestPulseAnalyzer.endJob(), EcalPedOffset.endJob(), SiPixelCalibDigiFilter.endJob(), AlCaGammaJetProducer.endJob(), StudyHLT.endJob(), CSCOverlapsBeamSplashCut.endJob(), HcalCorrPFCalculation.endJob(), RecAnalyzerMinbias.endJob(), Tracker_OldtoNewConverter.endJob(), cms::ProducerAnalyzer.endJob(), JetConstituentSelector< T, C >.endJob(), DTNoiseComputation.endJob(), PhiSymmetryCalibration.endJob(), MuonAlignmentAnalyzer.endJob(), ElectronCalibration.endJob(), WriteL1TriggerObjetsXml.endJob(), EcalPulseShapeGrapher.endJob(), PrescalerFHN.endJob(), SiPixelDQMRocLevelAnalyzer.endJob(), EcalRecHitsFilter.endJob(), ValueMapTraslator.endJob(), EcalLaserAnalyzer2.endJob(), HitEff.endJob(), cms::HcalConstantsASCIIWriter.endJob(), EcalLaserAnalyzer.endJob(), JetDeltaRTagInfoValueMapProducer< T, I >.endJob(), testChannel.endJob(), EcalBxOrbitNumberGrapher.endJob(), cms::Analyzer_minbias.endJob(), HcalLuttoDB.endJob(), TrackerGeometryCompare.endJob(), EcalURecHitHists.endJob(), LhcTrackAnalyzer.endJob(), EcalLaserAnalyzerYousi.endJob(), ElectronCalibrationUniv.endJob(), HcalRaddamMuon.endJob(), SiPixelErrorsDigisToCalibDigis.endJob(), EcalMipGraphs.endJob(), ApeEstimatorSummary.endJob(), CosmicSplitterValidation.endJob(), TrackerToMuonPropagator.endJob(), CSCOverlapsTrackPreparation.endJob(), SiPixelErrorEstimation.endJob(), HcalHBHEMuonAnalyzer.endJob(), EcalDisplaysByEvent.endJob(), AnalyzerMinbias.endJob(), EopTreeWriter.endJob(), AlignmentMonitorAsAnalyzer.endJob(), ValidIsoTrkCalib.endJob(), EcalCosmicsHists.endJob(), IsoTrig.endJob(), TrackerTreeGenerator.endJob(), PrimaryVertexValidation.endJob(), ValidationHcalIsoTrackAlCaReco.endJob(), DiJetAnalyzer.endJob(), IsoTrackCalib.endJob(), SelectedElectronFEDListProducer< TEle, TCand >.endJob(), LaserAlignment.endJob(), CosmicRateAnalyzer.endJob(), IsolatedGenParticles.endJob(), analyzer::SiPixelLorentzAngle.endJob(), PCLTrackerAlProducer.endJob(), TrackerOfflineValidationSummary.endJob(), IsolatedTracksCone.endJob(), IsolatedTracksHcalScale.endJob(), LaserSorter.endJob(), IsolatedTracksNxN.endJob(), GammaJetAnalysis.endJob(), SiPixelOfflineCalibAnalysisBase.endJob(), ApeEstimator.endJob(), GlobalTrackerMuonAlignment.endJob(), AlCaHOCalibProducer.endJob(), o2o.O2ORunMgr.endJob(), TrackerOfflineValidation.endJob(), HOCalibAnalyzer.endJob(), ConditionDBWriter< T >.endJob(), ResidualRefitting.endJob(), relativeConstraints.error, info(), o2o.O2ORunMgr.startJob(), ElectronStudy.verbose, MuonMillepedeAlgorithm.verbose, DeviationsFromFileSensor2D.verbose, HIPAlignmentAlgorithm.verbose, o2o.O2ORunMgr.verbose, and OpticalObject.verbose.

191  def executeJob( self, job_name, command ):
192  logFolder = os.getcwd()
193  if logFolderEnvVar in os.environ:
194  logFolder = os.environ[logFolderEnvVar]
195  datelabel = datetime.now().strftime("%y-%m-%d-%H-%M-%S")
196  logFileName = '%s-%s.log' %(job_name,datelabel)
197  logFile = os.path.join(logFolder,logFileName)
198  exists, enabled = self.startJob( job_name )
199  if exists is None:
200  return 3
201  if enabled is None:
202  O2OMgr.logger( self).error( 'The job %s is unknown.', job_name )
203  return 2
204  else:
205  if enabled == 0:
206  O2OMgr.logger( self).info( 'The job %s has been disabled.', job_name )
207  return 5
208  try:
209  O2OMgr.logger( self ).info('Executing job %s', job_name )
210  pipe = subprocess.Popen( command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT )
211  out = ''
212  for line in iter(pipe.stdout.readline, ''):
213  if self.verbose:
214  sys.stdout.write(line)
215  sys.stdout.flush()
216  out += line
217  pipe.communicate()
218  O2OMgr.logger( self ).info( 'Job %s returned code: %s' %(job_name,pipe.returncode) )
219  except Exception as e:
220  O2OMgr.logger( self ).error( str(e) )
221  return 4
222  self.endJob( pipe.returncode, out )
223  with open(logFile,'a') as logF:
224  logF.write(out)
225  return pipe.returncode
226 
227 
def endJob
Definition: o2o.py:180
static const TGPicture * info(bool iBackgroundIsBlack)
def executeJob
Definition: o2o.py:190
def startJob
Definition: o2o.py:156
def o2o.O2ORunMgr.log (   self,
  level,
  message 
)

Definition at line 141 of file o2o.py.

References o2o.O2OMgr.logger.

Referenced by conditionUploadTest.UploadTest.upload().

142  def log( self, level, message ):
143  consoleLog = getattr(O2OMgr.logger( self ),level)
144  consoleLog( message )
145  if self.logger:
146  fileLog = getattr(self.logger, level )
147  fileLog( message )
logger
Definition: o2o.py:62
def log
Definition: o2o.py:141
def o2o.O2ORunMgr.startJob (   self,
  job_name 
)

Definition at line 156 of file o2o.py.

References relativeConstraints.error, info(), o2o.O2ORun.job_name, o2o.O2ORunMgr.job_name, o2o.O2ORunMgr.start, and svgfig.LineAxis.start.

Referenced by o2o.O2ORunMgr.executeJob().

157  def startJob( self, job_name ):
158  O2OMgr.logger( self ).info('Checking job %s', job_name)
159  exists = None
160  enabled = None
161  try:
162  res = self.session.query(O2OJob.enabled).filter_by(name=job_name)
163  for r in res:
164  exists = True
165  enabled = int(r[0])
166  if exists is None:
167  exists = False
168  enabled = False
169  if enabled:
170  self.job_name = job_name
171  self.start = datetime.now()
172  run = O2ORun(job_name=self.job_name,start_time=self.start,status_code=startStatus)
173  self.session.add(run)
174  self.session.commit()
175  except sqlalchemy.exc.SQLAlchemyError as dberror:
176  print 'Error: [%s]' %str(dberror)
177  O2OMgr.logger( self ).error( str(dberror) )
178  return exists, enabled
179 
static const TGPicture * info(bool iBackgroundIsBlack)
def startJob
Definition: o2o.py:156

Member Data Documentation

o2o.O2ORunMgr.end

Definition at line 139 of file o2o.py.

Referenced by Types.LuminosityBlockRange.cppID(), Types.EventRange.cppID(), o2o.O2ORunMgr.endJob(), and cmsPerfSuite.PerfSuiteTimer.set_end().

o2o.O2ORunMgr.job_name

Definition at line 137 of file o2o.py.

Referenced by o2o.O2ORunMgr.endJob(), and o2o.O2ORunMgr.startJob().

o2o.O2ORunMgr.session

Definition at line 149 of file o2o.py.

o2o.O2ORunMgr.start

Definition at line 138 of file o2o.py.

Referenced by progressbar.ProgressBar.__next__(), Types.LuminosityBlockRange.cppID(), Types.EventRange.cppID(), o2o.O2ORunMgr.endJob(), cmsPerfSuite.PerfSuiteTimer.set_end(), cmsPerfSuite.PerfSuiteTimer.set_start(), and o2o.O2ORunMgr.startJob().

o2o.O2ORunMgr.verbose

Definition at line 150 of file o2o.py.

Referenced by o2o.O2ORunMgr.executeJob(), python.diff_provenance.difference.list_diff(), python.diffProv.difference.list_diff(), python.diff_provenance.difference.module_diff(), python.diffProv.difference.module_diff(), python.diff_provenance.difference.onefilemodules(), python.diffProv.difference.onefilemodules(), core.TriggerMatchAnalyzer.TriggerMatchAnalyzer.process(), core.SkimAnalyzerCount.SkimAnalyzerCount.process(), objects.VertexAnalyzer.VertexAnalyzer.process(), and confdbOfflineConverter.OfflineConverter.query().