CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes | Private Member Functions
dirstructure.Directory Class Reference
Inheritance diagram for dirstructure.Directory:
dirstructure.Weighted

Public Member Functions

def __init__ (self, name, mother_dir="", meta=CompInfo(), draw_success=False, do_pngs=False)
 
def __repr__ (self)
 
def calcStats (self, make_pie=True)
 
def get_fail_rate (self)
 
def get_null_rate (self)
 
def get_piechart_js (self, w=400, link=None)
 
def get_skiped_rate (self)
 
def get_subdirs_dict (self)
 
def get_subdirs_names (self)
 
def get_success_rate (self)
 
def get_summary_chart_name (self)
 
def is_empty (self)
 
def print_report (self, indent="", verbose=False)
 
def prune (self, expandable_dir)
 
- Public Member Functions inherited from dirstructure.Weighted
def __init__ (self, name, weight=1)
 

Public Attributes

 comparisons
 
 different_histograms
 
 do_pngs
 
 draw_success
 
 filename1
 
 filename2
 
 full_path
 
 meta
 
 mother_dir
 
 n_comp_fails
 
 n_comp_nulls
 
 n_comp_skiped
 
 n_comp_successes
 
 n_fails
 
 n_missing_objs
 
 n_nulls
 
 n_skiped
 
 n_successes
 
 rank_histo
 
 stats_calculated
 
 subdirs
 
 weight
 
- Public Attributes inherited from dirstructure.Weighted
 name
 
 weight
 

Private Member Functions

def __create_on_disk (self)
 
def __create_pie_image (self)
 
def __get_full_path (self)
 

Detailed Description

Definition at line 63 of file dirstructure.py.

Constructor & Destructor Documentation

◆ __init__()

def dirstructure.Directory.__init__ (   self,
  name,
  mother_dir = "",
  meta = CompInfo(),
  draw_success = False,
  do_pngs = False 
)

Definition at line 64 of file dirstructure.py.

64  def __init__(self,name,mother_dir="",meta=CompInfo(),draw_success=False,do_pngs=False):
65  self.mother_dir=mother_dir
66  self.meta=meta
67  self.subdirs=[]
68  self.comparisons=[]
69  self.n_fails=0
70  self.n_successes=0
71  self.n_nulls=0
72  self.n_skiped = 0
73  self.n_comp_skiped = 0
74  self.n_comp_fails=0
75  self.n_comp_successes=0
76  self.n_comp_nulls=0
77  self.weight=0
78  self.stats_calculated=False
79  Weighted.__init__(self,name)
80  self.draw_success=draw_success
81  self.do_pngs=do_pngs
82  self.rank_histo=ROOT.TH1I("rh%s"%name,"",50,-0.01,1.001)
83  self.rank_histo.SetDirectory(0)
84  self.different_histograms = {}
85  self.different_histograms['file1']= {}
86  self.different_histograms['file2']= {}
87  self.filename1 = ""
88  self.filename2 = ""
89  self.n_missing_objs = 0
90  self.full_path = ""
91 
def __init__(self, dataset, job_number, job_id, job_name, isDA, isMC, applyBOWS, applyEXTRACOND, extraconditions, runboundary, lumilist, intlumi, maxevents, gt, allFromGT, alignmentDB, alignmentTAG, apeDB, apeTAG, bowDB, bowTAG, vertextype, tracktype, refittertype, ttrhtype, applyruncontrol, ptcut, CMSSW_dir, the_dir)

Member Function Documentation

◆ __create_on_disk()

def dirstructure.Directory.__create_on_disk (   self)
private

Definition at line 253 of file dirstructure.py.

References dirstructure.Directory.__get_full_path(), and dirstructure.Directory.mother_dir.

Referenced by dirstructure.Directory.__create_pie_image().

253  def __create_on_disk(self):
254  if not exists(self.mother_dir) and len(self.mother_dir)!=0:
255  makedirs(self.mother_dir)
256  full_path=self.__get_full_path()
257  if not exists(full_path) and len(full_path)>0:
258  makedirs(full_path)
259 

◆ __create_pie_image()

def dirstructure.Directory.__create_pie_image (   self)
private

Definition at line 263 of file dirstructure.py.

References dirstructure.Directory.__create_on_disk(), mps_check.array, dirstructure.Directory.get_fail_rate(), dirstructure.Directory.get_null_rate(), dirstructure.Directory.get_skiped_rate(), dirstructure.Directory.get_success_rate(), dirstructure.Directory.get_summary_chart_name(), dirstructure.Directory.n_fails, dirstructure.Directory.n_nulls, dirstructure.Directory.n_skiped, dirstructure.Directory.n_successes, ElectronMVAID.ElectronMVAID.name, AlignableObjectId::entry.name, average.Average.name, counter.Counter.name, histograms.Histograms.name, cond::persistency::RUN_INFO::RUN_NUMBER.name, cond::persistency::TAG::NAME.name, FWLite.ElectronMVAID.name, TmModule.name, cond::persistency::GTEditorData.name, cond::persistency::GLOBAL_TAG::NAME.name, cond::persistency::RUN_INFO::START_TIME.name, cond::persistency::TAG::TIME_TYPE.name, cond::persistency::GLOBAL_TAG::VALIDITY.name, cond::persistency::GLOBAL_TAG::DESCRIPTION.name, core.autovars.NTupleVariable.name, cond::persistency::RUN_INFO::END_TIME.name, cond::persistency::TAG::OBJECT_TYPE.name, cond::persistency::GLOBAL_TAG::RELEASE.name, cond::persistency::TAG::SYNCHRONIZATION.name, DQMRivetClient::NormOption.name, cond::persistency::GLOBAL_TAG::SNAPSHOT_TIME.name, cond::persistency::TAG::END_OF_VALIDITY.name, MEPSet.name, cond::persistency::GLOBAL_TAG::INSERTION_TIME.name, cond::persistency::O2O_RUN::JOB_NAME.name, cond::persistency::TAG::DESCRIPTION.name, cms::dd::NameValuePair< T >.name, cond::persistency::O2O_RUN::START_TIME.name, cond::persistency::TAG::LAST_VALIDATED_TIME.name, cond::persistency::O2O_RUN::END_TIME.name, cond::persistency::TAG::INSERTION_TIME.name, FWTGeoRecoGeometry::Info.name, cond::persistency::O2O_RUN::STATUS_CODE.name, cond::persistency::TAG::MODIFICATION_TIME.name, ParameterSet.name, cond::persistency::O2O_RUN::LOG.name, nanoaod::MergeableCounterTable::SingleColumn< T >.name, cond::persistency::TAG::PROTECTION_CODE.name, OutputMEPSet.name, AlignmentConstraint.name, PixelDCSObject< T >::Item.name, dataset.BaseDataset.name, SummaryTableOutputBranches::NamedBranchPtr.name, cms::dd::ValuePair< T, U >.name, fit::RootMinuitCommand.name, HcalForwardLibWriter::FileHandle.name, personalPlayback.Applet.name, EventStringOutputBranches::NamedBranchPtr.name, Types._Untracked.name, MagCylinder.name, analyzer.Analyzer.name, production_tasks.Task.name, heppy::ParSet.name, DQMRivetClient::LumiOption.name, cond::persistency::GTProxyData.name, TriggerOutputBranches::NamedBranchPtr.name, CharmTagger::MVAVar.name, SingleObjectCondition.name, TableOutputBranches::NamedBranchPtr.name, HeavyIonCSVTagger::MVAVar.name, edm::PathTimingSummary.name, DQMRivetClient::ScaleFactorOption.name, cms::DDAlgoArguments.name, RHStopTracer::StopPoint.name, EgHLTOfflineSummaryClient::SumHistBinData.name, Barrel.name, perftools::EdmEventSize::BranchRecord.name, core.autovars.NTupleObjectType.name, cond::TimeTypeSpecs.name, EcalLogicID.name, LumiOutputBranches::NamedBranchPtr.name, edm::PathSummary.name, lumi::TriggerInfo.name, PixelEndcapLinkMaker::Item.name, XMLProcessor::_loaderBaseConfig.name, MEtoEDM< T >::MEtoEDMObject.name, dirstructure.Weighted.name, FWTableViewManager::TableEntry.name, PixelBarrelLinkMaker::Item.name, ExpressionHisto< T >.name, DQMGenericClient::EfficOption.name, python.rootplot.utilities.Hist2D.name, TreeCrawler.Package.name, Supermodule.name, cond::persistency::GLOBAL_TAG_MAP::GLOBAL_TAG_NAME.name, CaloTrkProcessing::Detector.name, cond::persistency::GLOBAL_TAG_MAP::RECORD.name, options.ConnectionHLTMenu.name, MVAVar.name, cond::persistency::GLOBAL_TAG_MAP::LABEL.name, cms::DDParsingContext::CompositeMaterial.name, cond::persistency::GLOBAL_TAG_MAP::TAG_NAME.name, DisplayManager.DisplayManager.name, cond::Tag_t.name, FWLite.WorkingPoints.name, dqmoffline::l1t::HistDefinition.name, DQMGenericClient::ProfileOption.name, nanoaod::MergeableCounterTable::VectorColumn< T >.name, magneticfield::BaseVolumeHandle.name, FastHFShowerLibrary.name, emtf::Node.name, PhysicsTools::Variable::Value.name, h4DSegm.name, BTagProbabilityToDiscriminator::Discriminator.name, PrintMaterialBudgetInfo.name, DQMGenericClient::NormOption.name, core.TriggerMatchAnalyzer.TriggerMatchAnalyzer.name, DQMGenericClient::CDOption.name, CounterChecker.name, cond::TagInfo_t.name, TrackerSectorStruct.name, MuonGeometrySanityCheckPoint.name, PhysicsTools::Calibration::Variable.name, DQMGenericClient::NoFlowOption.name, cond::persistency::PAYLOAD::HASH.name, EDMtoMEConverter.name, Mapper::definition< ScannerT >.name, cond::persistency::PAYLOAD::OBJECT_TYPE.name, looper.Looper.name, cond::persistency::PAYLOAD::DATA.name, python.rootplot.tree2hists.Plot.name, cond::persistency::PAYLOAD::STREAMER_INFO.name, cond::persistency::PAYLOAD::VERSION.name, cond::persistency::PAYLOAD::INSERTION_TIME.name, PhysicsTools::TreeReader::Value.name, classes.MonitorData.name, PhysicsTools::ProcessRegistry< Base_t, CalibBase_t, Parent_t >.name, HistogramManager.name, classes.OutputData.name, BPHDecayToResResBuilderBase::DZSelect.name, Crystal.name, h2DSegm.name, options.HLTProcessOptions.name, cond::persistency::IOV::TAG_NAME.name, cond::persistency::IOV::SINCE.name, cond::persistency::IOV::PAYLOAD_HASH.name, cond::persistency::IOV::INSERTION_TIME.name, DQMNet::WaitObject.name, core.TriggerBitAnalyzer.TriggerBitAnalyzer.name, python.rootplot.utilities.Hist.name, AlpgenParameterName.name, config.Analyzer.name, geometry.Structure.name, hDigis.name, core.autovars.NTupleSubObject.name, Capsule.name, core.autovars.NTupleObject.name, Ceramic.name, SiStripMonitorDigi.name, PhysicsTools::Variable.name, config.Service.name, BulkSilicon.name, adaptToRunAtMiniAOD.adaptToRunAtMiniAOD.name, APD.name, core.autovars.NTupleCollection.name, BPHRecoBuilder::BPHRecoSource.name, CaloSD::Detector.name, nanoaod::FlatTable::Column.name, BPHRecoBuilder::BPHCompSource.name, StraightTrackAlignment::RPSetPlots.name, cond::persistency::TAG_AUTHORIZATION::TAG_NAME.name, cond::persistency::TAG_AUTHORIZATION::ACCESS_TYPE.name, cond::persistency::TAG_AUTHORIZATION::CREDENTIAL.name, cond::persistency::TAG_AUTHORIZATION::CREDENTIAL_TYPE.name, InnerLayerVolume.name, NanoAODDQM::SelGroupConfig.name, cond::payloadInspector::TagReference.name, cond::persistency::TAG_LOG::TAG_NAME.name, cond::persistency::TAG_LOG::EVENT_TIME.name, cond::persistency::TAG_LOG::USER_NAME.name, cond::persistency::TAG_LOG::HOST_NAME.name, cond::persistency::TAG_LOG::COMMAND.name, cond::persistency::TAG_LOG::ACTION.name, cond::persistency::TAG_LOG::USER_TEXT.name, personalPlayback.FrameworkJob.name, Grid.name, trklet::TrackletConfigBuilder::DTCinfo.name, Grille.name, BackPipe.name, plotscripts.SawTeethFunction.name, PatchPanel.name, BackCoolTank.name, DryAirTube.name, python.rootplot.utilities.RootFile.name, crabFunctions.CrabTask.name, MBCoolTube.name, hHits.name, MBManif.name, cscdqm::ParHistoDef.name, hDeltaR.name, hTMaxCell.name, hParam.name, hMuonStat.name, hTOF.name, hTDelay.name, hTimes< hTime >.name, SummaryOutputProducer::GenericSummary.name, print(), and reco.zip().

263  def __create_pie_image(self):
264  self.__create_on_disk()
265  vals=[]
266  colors=[]
267  for n,col in zip((self.n_fails,self.n_nulls,self.n_successes,self.n_skiped),(ROOT.kRed,ROOT.kYellow,ROOT.kGreen,ROOT.kBlue)):
268  if n!=0:
269  vals.append(n)
270  colors.append(col)
271  valsa=array('f',vals)
272  colorsa=array('i',colors)
273  can = ROOT.TCanvas("cpie","TPie test",100,100);
274  try:
275  pie = TPie("ThePie",self.name,len(vals),valsa,colorsa);
276  label_n=0
277  if self.n_fails!=0:
278  pie.SetEntryLabel(label_n, "Fail: %.1f(%i)" %(self.get_fail_rate(),self.n_fails) );
279  label_n+=1
280  if self.n_nulls!=0:
281  pie.SetEntryLabel(label_n, "Null: %.1f(%i)" %(self.get_null_rate(),self.n_nulls) );
282  label_n+=1
283  if self.n_successes!=0:
284  pie.SetEntryLabel(label_n, "Success: %.1f(%i)" %(self.get_success_rate(),self.n_successes) );
285  if self.n_skiped!=0:
286  pie.SetEntryLabel(label_n, "Skipped: %.1f(%i)" %(self.get_skiped_rate(),self.n_skiped));
287  pie.SetY(.52);
288  pie.SetAngularOffset(0.);
289  pie.SetLabelsOffset(-.3);
290  #pie.SetLabelFormat("#splitline{%val (%perc)}{%txt}");
291  pie.Draw("3d nol");
292  can.Print(self.get_summary_chart_name());
293  except:
294  print("self.name = %s" %self.name)
295  print("len(vals) = %s (vals=%s)" %(len(vals),vals))
296  print("valsa = %s" %valsa)
297  print("colorsa = %s" %colorsa)
298 
ALPAKA_FN_HOST_ACC ALPAKA_FN_INLINE constexpr float zip(ConstView const &tracks, int32_t i)
Definition: TracksSoA.h:90
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47

◆ __get_full_path()

def dirstructure.Directory.__get_full_path (   self)
private

Definition at line 247 of file dirstructure.py.

References join(), dirstructure.Directory.mother_dir, ElectronMVAID.ElectronMVAID.name, AlignableObjectId::entry.name, average.Average.name, counter.Counter.name, histograms.Histograms.name, cond::persistency::RUN_INFO::RUN_NUMBER.name, TmModule.name, cond::persistency::TAG::NAME.name, cond::persistency::GTEditorData.name, FWLite.ElectronMVAID.name, cond::persistency::GLOBAL_TAG::NAME.name, cond::persistency::TAG::TIME_TYPE.name, cond::persistency::RUN_INFO::START_TIME.name, cond::persistency::GLOBAL_TAG::VALIDITY.name, cond::persistency::RUN_INFO::END_TIME.name, core.autovars.NTupleVariable.name, cond::persistency::TAG::OBJECT_TYPE.name, cond::persistency::GLOBAL_TAG::DESCRIPTION.name, cond::persistency::TAG::SYNCHRONIZATION.name, cond::persistency::GLOBAL_TAG::RELEASE.name, DQMRivetClient::NormOption.name, cond::persistency::TAG::END_OF_VALIDITY.name, MEPSet.name, cond::persistency::GLOBAL_TAG::SNAPSHOT_TIME.name, cond::persistency::O2O_RUN::JOB_NAME.name, cond::persistency::TAG::DESCRIPTION.name, cms::dd::NameValuePair< T >.name, cond::persistency::GLOBAL_TAG::INSERTION_TIME.name, cond::persistency::O2O_RUN::START_TIME.name, cond::persistency::TAG::LAST_VALIDATED_TIME.name, cond::persistency::O2O_RUN::END_TIME.name, cond::persistency::TAG::INSERTION_TIME.name, FWTGeoRecoGeometry::Info.name, cond::persistency::O2O_RUN::STATUS_CODE.name, cond::persistency::TAG::MODIFICATION_TIME.name, cond::persistency::O2O_RUN::LOG.name, ParameterSet.name, nanoaod::MergeableCounterTable::SingleColumn< T >.name, cond::persistency::TAG::PROTECTION_CODE.name, OutputMEPSet.name, PixelDCSObject< T >::Item.name, dataset.BaseDataset.name, SummaryTableOutputBranches::NamedBranchPtr.name, AlignmentConstraint.name, cms::dd::ValuePair< T, U >.name, fit::RootMinuitCommand.name, HcalForwardLibWriter::FileHandle.name, personalPlayback.Applet.name, EventStringOutputBranches::NamedBranchPtr.name, Types._Untracked.name, MagCylinder.name, analyzer.Analyzer.name, production_tasks.Task.name, heppy::ParSet.name, DQMRivetClient::LumiOption.name, cond::persistency::GTProxyData.name, TriggerOutputBranches::NamedBranchPtr.name, CharmTagger::MVAVar.name, SingleObjectCondition.name, TableOutputBranches::NamedBranchPtr.name, HeavyIonCSVTagger::MVAVar.name, edm::PathTimingSummary.name, DQMRivetClient::ScaleFactorOption.name, cms::DDAlgoArguments.name, EgHLTOfflineSummaryClient::SumHistBinData.name, RHStopTracer::StopPoint.name, Barrel.name, perftools::EdmEventSize::BranchRecord.name, core.autovars.NTupleObjectType.name, cond::TimeTypeSpecs.name, EcalLogicID.name, LumiOutputBranches::NamedBranchPtr.name, edm::PathSummary.name, lumi::TriggerInfo.name, XMLProcessor::_loaderBaseConfig.name, PixelEndcapLinkMaker::Item.name, MEtoEDM< T >::MEtoEDMObject.name, dirstructure.Weighted.name, FWTableViewManager::TableEntry.name, PixelBarrelLinkMaker::Item.name, ExpressionHisto< T >.name, DQMGenericClient::EfficOption.name, python.rootplot.utilities.Hist2D.name, TreeCrawler.Package.name, Supermodule.name, CaloTrkProcessing::Detector.name, cond::persistency::GLOBAL_TAG_MAP::GLOBAL_TAG_NAME.name, cond::persistency::GLOBAL_TAG_MAP::RECORD.name, options.ConnectionHLTMenu.name, cond::persistency::GLOBAL_TAG_MAP::LABEL.name, MVAVar.name, cms::DDParsingContext::CompositeMaterial.name, cond::persistency::GLOBAL_TAG_MAP::TAG_NAME.name, DisplayManager.DisplayManager.name, cond::Tag_t.name, FWLite.WorkingPoints.name, dqmoffline::l1t::HistDefinition.name, DQMGenericClient::ProfileOption.name, magneticfield::BaseVolumeHandle.name, nanoaod::MergeableCounterTable::VectorColumn< T >.name, FastHFShowerLibrary.name, emtf::Node.name, PhysicsTools::Variable::Value.name, h4DSegm.name, PrintMaterialBudgetInfo.name, DQMGenericClient::NormOption.name, BTagProbabilityToDiscriminator::Discriminator.name, core.TriggerMatchAnalyzer.TriggerMatchAnalyzer.name, DQMGenericClient::CDOption.name, CounterChecker.name, cond::TagInfo_t.name, TrackerSectorStruct.name, MuonGeometrySanityCheckPoint.name, DQMGenericClient::NoFlowOption.name, cond::persistency::PAYLOAD::HASH.name, EDMtoMEConverter.name, PhysicsTools::Calibration::Variable.name, looper.Looper.name, Mapper::definition< ScannerT >.name, cond::persistency::PAYLOAD::OBJECT_TYPE.name, cond::persistency::PAYLOAD::DATA.name, python.rootplot.tree2hists.Plot.name, cond::persistency::PAYLOAD::STREAMER_INFO.name, cond::persistency::PAYLOAD::VERSION.name, cond::persistency::PAYLOAD::INSERTION_TIME.name, PhysicsTools::TreeReader::Value.name, classes.MonitorData.name, PhysicsTools::ProcessRegistry< Base_t, CalibBase_t, Parent_t >.name, HistogramManager.name, classes.OutputData.name, BPHDecayToResResBuilderBase::DZSelect.name, Crystal.name, h2DSegm.name, options.HLTProcessOptions.name, cond::persistency::IOV::TAG_NAME.name, cond::persistency::IOV::SINCE.name, cond::persistency::IOV::PAYLOAD_HASH.name, cond::persistency::IOV::INSERTION_TIME.name, DQMNet::WaitObject.name, core.TriggerBitAnalyzer.TriggerBitAnalyzer.name, python.rootplot.utilities.Hist.name, AlpgenParameterName.name, config.Analyzer.name, geometry.Structure.name, hDigis.name, core.autovars.NTupleSubObject.name, Capsule.name, core.autovars.NTupleObject.name, Ceramic.name, PhysicsTools::Variable.name, SiStripMonitorDigi.name, config.Service.name, BulkSilicon.name, adaptToRunAtMiniAOD.adaptToRunAtMiniAOD.name, APD.name, core.autovars.NTupleCollection.name, BPHRecoBuilder::BPHRecoSource.name, CaloSD::Detector.name, nanoaod::FlatTable::Column.name, BPHRecoBuilder::BPHCompSource.name, StraightTrackAlignment::RPSetPlots.name, cond::persistency::TAG_AUTHORIZATION::TAG_NAME.name, cond::persistency::TAG_AUTHORIZATION::ACCESS_TYPE.name, cond::persistency::TAG_AUTHORIZATION::CREDENTIAL.name, cond::persistency::TAG_AUTHORIZATION::CREDENTIAL_TYPE.name, InnerLayerVolume.name, NanoAODDQM::SelGroupConfig.name, cond::payloadInspector::TagReference.name, cond::persistency::TAG_LOG::TAG_NAME.name, cond::persistency::TAG_LOG::EVENT_TIME.name, cond::persistency::TAG_LOG::USER_NAME.name, cond::persistency::TAG_LOG::HOST_NAME.name, cond::persistency::TAG_LOG::COMMAND.name, cond::persistency::TAG_LOG::ACTION.name, cond::persistency::TAG_LOG::USER_TEXT.name, personalPlayback.FrameworkJob.name, Grid.name, trklet::TrackletConfigBuilder::DTCinfo.name, Grille.name, BackPipe.name, plotscripts.SawTeethFunction.name, PatchPanel.name, BackCoolTank.name, DryAirTube.name, python.rootplot.utilities.RootFile.name, crabFunctions.CrabTask.name, MBCoolTube.name, hHits.name, MBManif.name, cscdqm::ParHistoDef.name, hDeltaR.name, hTMaxCell.name, hParam.name, hMuonStat.name, hTOF.name, hTDelay.name, hTimes< hTime >.name, and SummaryOutputProducer::GenericSummary.name.

Referenced by dirstructure.Directory.__create_on_disk(), and dirstructure.Directory.get_summary_chart_name().

247  def __get_full_path(self):
248  #print "Mother is %s" %self.mother_dir
249  if len(self.mother_dir)==0:
250  return self.name
251  return join(self.mother_dir,self.name)
252 
static std::string join(char **cmd)
Definition: RemoteFile.cc:19

◆ __repr__()

def dirstructure.Directory.__repr__ (   self)

Definition at line 343 of file dirstructure.py.

References dirstructure.Directory.comparisons, dirstructure.Directory.get_fail_rate(), dirstructure.Directory.get_null_rate(), dirstructure.Directory.get_success_rate(), DEutils< T >.is_empty(), DEcompare< T >.is_empty(), dirstructure.Directory.is_empty(), dirstructure.Directory.n_fails, dirstructure.Directory.n_nulls, dirstructure.Directory.n_successes, ElectronMVAID.ElectronMVAID.name, AlignableObjectId::entry.name, average.Average.name, counter.Counter.name, histograms.Histograms.name, cond::persistency::TAG::NAME.name, cond::persistency::RUN_INFO::RUN_NUMBER.name, TmModule.name, FWLite.ElectronMVAID.name, cond::persistency::GTEditorData.name, cond::persistency::GLOBAL_TAG::NAME.name, cond::persistency::TAG::TIME_TYPE.name, cond::persistency::RUN_INFO::START_TIME.name, cond::persistency::GLOBAL_TAG::VALIDITY.name, cond::persistency::RUN_INFO::END_TIME.name, core.autovars.NTupleVariable.name, cond::persistency::TAG::OBJECT_TYPE.name, cond::persistency::GLOBAL_TAG::DESCRIPTION.name, cond::persistency::TAG::SYNCHRONIZATION.name, cond::persistency::GLOBAL_TAG::RELEASE.name, DQMRivetClient::NormOption.name, cond::persistency::TAG::END_OF_VALIDITY.name, MEPSet.name, cond::persistency::GLOBAL_TAG::SNAPSHOT_TIME.name, cond::persistency::O2O_RUN::JOB_NAME.name, cond::persistency::TAG::DESCRIPTION.name, cms::dd::NameValuePair< T >.name, cond::persistency::GLOBAL_TAG::INSERTION_TIME.name, cond::persistency::O2O_RUN::START_TIME.name, cond::persistency::TAG::LAST_VALIDATED_TIME.name, cond::persistency::O2O_RUN::END_TIME.name, cond::persistency::TAG::INSERTION_TIME.name, FWTGeoRecoGeometry::Info.name, cond::persistency::O2O_RUN::STATUS_CODE.name, cond::persistency::TAG::MODIFICATION_TIME.name, cond::persistency::O2O_RUN::LOG.name, ParameterSet.name, nanoaod::MergeableCounterTable::SingleColumn< T >.name, cond::persistency::TAG::PROTECTION_CODE.name, OutputMEPSet.name, AlignmentConstraint.name, PixelDCSObject< T >::Item.name, dataset.BaseDataset.name, SummaryTableOutputBranches::NamedBranchPtr.name, cms::dd::ValuePair< T, U >.name, fit::RootMinuitCommand.name, HcalForwardLibWriter::FileHandle.name, personalPlayback.Applet.name, EventStringOutputBranches::NamedBranchPtr.name, Types._Untracked.name, MagCylinder.name, analyzer.Analyzer.name, production_tasks.Task.name, heppy::ParSet.name, DQMRivetClient::LumiOption.name, cond::persistency::GTProxyData.name, TriggerOutputBranches::NamedBranchPtr.name, SingleObjectCondition.name, CharmTagger::MVAVar.name, TableOutputBranches::NamedBranchPtr.name, HeavyIonCSVTagger::MVAVar.name, edm::PathTimingSummary.name, DQMRivetClient::ScaleFactorOption.name, cms::DDAlgoArguments.name, RHStopTracer::StopPoint.name, EgHLTOfflineSummaryClient::SumHistBinData.name, Barrel.name, perftools::EdmEventSize::BranchRecord.name, core.autovars.NTupleObjectType.name, cond::TimeTypeSpecs.name, EcalLogicID.name, LumiOutputBranches::NamedBranchPtr.name, edm::PathSummary.name, lumi::TriggerInfo.name, PixelEndcapLinkMaker::Item.name, XMLProcessor::_loaderBaseConfig.name, MEtoEDM< T >::MEtoEDMObject.name, dirstructure.Weighted.name, FWTableViewManager::TableEntry.name, PixelBarrelLinkMaker::Item.name, ExpressionHisto< T >.name, DQMGenericClient::EfficOption.name, python.rootplot.utilities.Hist2D.name, TreeCrawler.Package.name, Supermodule.name, cond::persistency::GLOBAL_TAG_MAP::GLOBAL_TAG_NAME.name, CaloTrkProcessing::Detector.name, cond::persistency::GLOBAL_TAG_MAP::RECORD.name, options.ConnectionHLTMenu.name, cond::persistency::GLOBAL_TAG_MAP::LABEL.name, cms::DDParsingContext::CompositeMaterial.name, MVAVar.name, cond::persistency::GLOBAL_TAG_MAP::TAG_NAME.name, DisplayManager.DisplayManager.name, cond::Tag_t.name, FWLite.WorkingPoints.name, dqmoffline::l1t::HistDefinition.name, DQMGenericClient::ProfileOption.name, magneticfield::BaseVolumeHandle.name, nanoaod::MergeableCounterTable::VectorColumn< T >.name, FastHFShowerLibrary.name, emtf::Node.name, PhysicsTools::Variable::Value.name, h4DSegm.name, PrintMaterialBudgetInfo.name, DQMGenericClient::NormOption.name, BTagProbabilityToDiscriminator::Discriminator.name, core.TriggerMatchAnalyzer.TriggerMatchAnalyzer.name, DQMGenericClient::CDOption.name, CounterChecker.name, cond::TagInfo_t.name, TrackerSectorStruct.name, MuonGeometrySanityCheckPoint.name, cond::persistency::PAYLOAD::HASH.name, PhysicsTools::Calibration::Variable.name, DQMGenericClient::NoFlowOption.name, EDMtoMEConverter.name, looper.Looper.name, cond::persistency::PAYLOAD::OBJECT_TYPE.name, Mapper::definition< ScannerT >.name, cond::persistency::PAYLOAD::DATA.name, python.rootplot.tree2hists.Plot.name, cond::persistency::PAYLOAD::STREAMER_INFO.name, cond::persistency::PAYLOAD::VERSION.name, cond::persistency::PAYLOAD::INSERTION_TIME.name, PhysicsTools::TreeReader::Value.name, classes.MonitorData.name, PhysicsTools::ProcessRegistry< Base_t, CalibBase_t, Parent_t >.name, HistogramManager.name, classes.OutputData.name, BPHDecayToResResBuilderBase::DZSelect.name, Crystal.name, h2DSegm.name, cond::persistency::IOV::TAG_NAME.name, options.HLTProcessOptions.name, cond::persistency::IOV::SINCE.name, cond::persistency::IOV::PAYLOAD_HASH.name, cond::persistency::IOV::INSERTION_TIME.name, DQMNet::WaitObject.name, core.TriggerBitAnalyzer.TriggerBitAnalyzer.name, python.rootplot.utilities.Hist.name, AlpgenParameterName.name, config.Analyzer.name, geometry.Structure.name, hDigis.name, core.autovars.NTupleSubObject.name, Capsule.name, core.autovars.NTupleObject.name, Ceramic.name, SiStripMonitorDigi.name, PhysicsTools::Variable.name, config.Service.name, BulkSilicon.name, adaptToRunAtMiniAOD.adaptToRunAtMiniAOD.name, APD.name, core.autovars.NTupleCollection.name, BPHRecoBuilder::BPHRecoSource.name, CaloSD::Detector.name, nanoaod::FlatTable::Column.name, BPHRecoBuilder::BPHCompSource.name, StraightTrackAlignment::RPSetPlots.name, cond::persistency::TAG_AUTHORIZATION::TAG_NAME.name, cond::persistency::TAG_AUTHORIZATION::ACCESS_TYPE.name, cond::persistency::TAG_AUTHORIZATION::CREDENTIAL.name, cond::persistency::TAG_AUTHORIZATION::CREDENTIAL_TYPE.name, InnerLayerVolume.name, NanoAODDQM::SelGroupConfig.name, cond::payloadInspector::TagReference.name, cond::persistency::TAG_LOG::TAG_NAME.name, cond::persistency::TAG_LOG::EVENT_TIME.name, cond::persistency::TAG_LOG::USER_NAME.name, cond::persistency::TAG_LOG::HOST_NAME.name, cond::persistency::TAG_LOG::COMMAND.name, cond::persistency::TAG_LOG::ACTION.name, cond::persistency::TAG_LOG::USER_TEXT.name, personalPlayback.FrameworkJob.name, Grid.name, trklet::TrackletConfigBuilder::DTCinfo.name, Grille.name, BackPipe.name, plotscripts.SawTeethFunction.name, PatchPanel.name, BackCoolTank.name, DryAirTube.name, python.rootplot.utilities.RootFile.name, crabFunctions.CrabTask.name, MBCoolTube.name, hHits.name, MBManif.name, cscdqm::ParHistoDef.name, hDeltaR.name, hTMaxCell.name, hParam.name, hMuonStat.name, hTOF.name, hTDelay.name, hTimes< hTime >.name, SummaryOutputProducer::GenericSummary.name, and dirstructure.Directory.subdirs.

343  def __repr__(self):
344  if self.is_empty():
345  return "%s seems to be empty. Please check!" %self.name
346  content="%s , Rates: Success %.2f%%(%s) - Fail %.2f%%(%s) - Null %.2f%%(%s)\n" %(self.name,self.get_success_rate(),self.n_successes,self.get_fail_rate(),self.n_fails,self.get_null_rate(),self.n_nulls)
347  for subdir in self.subdirs:
348  content+=" %s\n" % subdir
349  for comp in self.comparisons:
350  content+=" %s\n" % comp
351  return content
352 
353 #-------------------------------------------------------------------------------

◆ calcStats()

def dirstructure.Directory.calcStats (   self,
  make_pie = True 
)
Walk all subdirs and calculate weight,fails and successes.
Moreove propagate the sample and releases names.

Definition at line 97 of file dirstructure.py.

References SiStripClientConfig_Tier0_cff.Add, dirstructure.Directory.comparisons, dirstructure.Directory.different_histograms, dirstructure.Directory.filename1, dirstructure.Directory.filename2, HcalObjRepresent.Fill(), dirstructure.Directory.full_path, join(), hgcal::econd::ERxData.meta, dqm::DQMFileSaverOnline::SnapshotFiles.meta, dirstructure.Directory.meta, dirstructure.Directory.mother_dir, dirstructure.Directory.n_comp_fails, dirstructure.Directory.n_comp_nulls, dirstructure.Directory.n_comp_skiped, dirstructure.Directory.n_comp_successes, dirstructure.Directory.n_fails, dirstructure.Directory.n_missing_objs, dirstructure.Directory.n_nulls, dirstructure.Directory.n_skiped, dirstructure.Directory.n_successes, ElectronMVAID.ElectronMVAID.name, AlignableObjectId::entry.name, average.Average.name, counter.Counter.name, histograms.Histograms.name, cond::persistency::GLOBAL_TAG::NAME.name, cond::persistency::TAG::NAME.name, cond::persistency::RUN_INFO::RUN_NUMBER.name, FWLite.ElectronMVAID.name, TmModule.name, cond::persistency::GTEditorData.name, cond::persistency::GLOBAL_TAG::VALIDITY.name, cond::persistency::TAG::TIME_TYPE.name, cond::persistency::RUN_INFO::START_TIME.name, cond::persistency::GLOBAL_TAG::DESCRIPTION.name, cond::persistency::TAG::OBJECT_TYPE.name, core.autovars.NTupleVariable.name, cond::persistency::RUN_INFO::END_TIME.name, cond::persistency::GLOBAL_TAG::RELEASE.name, DQMRivetClient::NormOption.name, cond::persistency::TAG::SYNCHRONIZATION.name, MEPSet.name, cond::persistency::GLOBAL_TAG::SNAPSHOT_TIME.name, cond::persistency::TAG::END_OF_VALIDITY.name, cond::persistency::GLOBAL_TAG::INSERTION_TIME.name, cond::persistency::TAG::DESCRIPTION.name, cond::persistency::O2O_RUN::JOB_NAME.name, cms::dd::NameValuePair< T >.name, cond::persistency::TAG::LAST_VALIDATED_TIME.name, cond::persistency::O2O_RUN::START_TIME.name, FWTGeoRecoGeometry::Info.name, cond::persistency::TAG::INSERTION_TIME.name, cond::persistency::O2O_RUN::END_TIME.name, cond::persistency::TAG::MODIFICATION_TIME.name, cond::persistency::O2O_RUN::STATUS_CODE.name, cond::persistency::TAG::PROTECTION_CODE.name, ParameterSet.name, cond::persistency::O2O_RUN::LOG.name, nanoaod::MergeableCounterTable::SingleColumn< T >.name, OutputMEPSet.name, dataset.BaseDataset.name, SummaryTableOutputBranches::NamedBranchPtr.name, AlignmentConstraint.name, PixelDCSObject< T >::Item.name, personalPlayback.Applet.name, fit::RootMinuitCommand.name, HcalForwardLibWriter::FileHandle.name, cms::dd::ValuePair< T, U >.name, Types._Untracked.name, EventStringOutputBranches::NamedBranchPtr.name, MagCylinder.name, analyzer.Analyzer.name, production_tasks.Task.name, DQMRivetClient::LumiOption.name, heppy::ParSet.name, cond::persistency::GTProxyData.name, SingleObjectCondition.name, TriggerOutputBranches::NamedBranchPtr.name, CharmTagger::MVAVar.name, edm::PathTimingSummary.name, DQMRivetClient::ScaleFactorOption.name, HeavyIonCSVTagger::MVAVar.name, TableOutputBranches::NamedBranchPtr.name, EgHLTOfflineSummaryClient::SumHistBinData.name, cms::DDAlgoArguments.name, RHStopTracer::StopPoint.name, Barrel.name, perftools::EdmEventSize::BranchRecord.name, core.autovars.NTupleObjectType.name, cond::TimeTypeSpecs.name, edm::PathSummary.name, EcalLogicID.name, LumiOutputBranches::NamedBranchPtr.name, lumi::TriggerInfo.name, XMLProcessor::_loaderBaseConfig.name, PixelEndcapLinkMaker::Item.name, FWTableViewManager::TableEntry.name, dirstructure.Weighted.name, MEtoEDM< T >::MEtoEDMObject.name, PixelBarrelLinkMaker::Item.name, DQMGenericClient::EfficOption.name, ExpressionHisto< T >.name, python.rootplot.utilities.Hist2D.name, TreeCrawler.Package.name, Supermodule.name, cond::persistency::GLOBAL_TAG_MAP::GLOBAL_TAG_NAME.name, CaloTrkProcessing::Detector.name, cond::persistency::GLOBAL_TAG_MAP::RECORD.name, options.ConnectionHLTMenu.name, cond::persistency::GLOBAL_TAG_MAP::LABEL.name, MVAVar.name, cms::DDParsingContext::CompositeMaterial.name, cond::persistency::GLOBAL_TAG_MAP::TAG_NAME.name, DisplayManager.DisplayManager.name, cond::Tag_t.name, dqmoffline::l1t::HistDefinition.name, DQMGenericClient::ProfileOption.name, FWLite.WorkingPoints.name, FastHFShowerLibrary.name, nanoaod::MergeableCounterTable::VectorColumn< T >.name, magneticfield::BaseVolumeHandle.name, emtf::Node.name, PhysicsTools::Variable::Value.name, h4DSegm.name, BTagProbabilityToDiscriminator::Discriminator.name, PrintMaterialBudgetInfo.name, DQMGenericClient::NormOption.name, core.TriggerMatchAnalyzer.TriggerMatchAnalyzer.name, DQMGenericClient::CDOption.name, CounterChecker.name, cond::TagInfo_t.name, TrackerSectorStruct.name, MuonGeometrySanityCheckPoint.name, DQMGenericClient::NoFlowOption.name, EDMtoMEConverter.name, cond::persistency::PAYLOAD::HASH.name, PhysicsTools::Calibration::Variable.name, cond::persistency::PAYLOAD::OBJECT_TYPE.name, looper.Looper.name, Mapper::definition< ScannerT >.name, cond::persistency::PAYLOAD::DATA.name, python.rootplot.tree2hists.Plot.name, cond::persistency::PAYLOAD::STREAMER_INFO.name, cond::persistency::PAYLOAD::VERSION.name, cond::persistency::PAYLOAD::INSERTION_TIME.name, PhysicsTools::TreeReader::Value.name, classes.MonitorData.name, PhysicsTools::ProcessRegistry< Base_t, CalibBase_t, Parent_t >.name, HistogramManager.name, classes.OutputData.name, BPHDecayToResResBuilderBase::DZSelect.name, Crystal.name, h2DSegm.name, cond::persistency::IOV::TAG_NAME.name, options.HLTProcessOptions.name, cond::persistency::IOV::SINCE.name, cond::persistency::IOV::PAYLOAD_HASH.name, cond::persistency::IOV::INSERTION_TIME.name, DQMNet::WaitObject.name, core.TriggerBitAnalyzer.TriggerBitAnalyzer.name, python.rootplot.utilities.Hist.name, AlpgenParameterName.name, config.Analyzer.name, geometry.Structure.name, hDigis.name, core.autovars.NTupleSubObject.name, Capsule.name, core.autovars.NTupleObject.name, Ceramic.name, PhysicsTools::Variable.name, SiStripMonitorDigi.name, BulkSilicon.name, config.Service.name, adaptToRunAtMiniAOD.adaptToRunAtMiniAOD.name, APD.name, core.autovars.NTupleCollection.name, BPHRecoBuilder::BPHRecoSource.name, CaloSD::Detector.name, nanoaod::FlatTable::Column.name, BPHRecoBuilder::BPHCompSource.name, StraightTrackAlignment::RPSetPlots.name, cond::persistency::TAG_AUTHORIZATION::TAG_NAME.name, cond::persistency::TAG_AUTHORIZATION::ACCESS_TYPE.name, cond::persistency::TAG_AUTHORIZATION::CREDENTIAL.name, cond::persistency::TAG_AUTHORIZATION::CREDENTIAL_TYPE.name, InnerLayerVolume.name, NanoAODDQM::SelGroupConfig.name, cond::payloadInspector::TagReference.name, cond::persistency::TAG_LOG::TAG_NAME.name, cond::persistency::TAG_LOG::EVENT_TIME.name, cond::persistency::TAG_LOG::USER_NAME.name, cond::persistency::TAG_LOG::HOST_NAME.name, cond::persistency::TAG_LOG::COMMAND.name, cond::persistency::TAG_LOG::ACTION.name, cond::persistency::TAG_LOG::USER_TEXT.name, personalPlayback.FrameworkJob.name, Grid.name, trklet::TrackletConfigBuilder::DTCinfo.name, Grille.name, BackPipe.name, plotscripts.SawTeethFunction.name, PatchPanel.name, BackCoolTank.name, DryAirTube.name, python.rootplot.utilities.RootFile.name, crabFunctions.CrabTask.name, MBCoolTube.name, hHits.name, MBManif.name, cscdqm::ParHistoDef.name, hDeltaR.name, hTMaxCell.name, hParam.name, hMuonStat.name, hTOF.name, hTDelay.name, hTimes< hTime >.name, SummaryOutputProducer::GenericSummary.name, print(), dirstructure.Directory.rank_histo, python.rootplot.root2matplotlib.replace(), dirstructure.Directory.stats_calculated, dirstructure.Directory.subdirs, RPCDQMObject::DQMObjectItem.weight, TtFullLepKinSolver::NeutrinoSolution.weight, JetAnaPythia< Jet >.weight, lheh5::EventHeader.weight, ZIterativeAlgorithmWithFit::ZIterativeAlgorithmWithFitPlots.weight, SeedCandidate.weight, ExtendedPerigeeTrajectoryError.weight, LutXml::_Config.weight, materialEffect::Effect.weight, L1Analysis::L1AnalysisGeneratorDataFormat.weight, dirstructure.Weighted.weight, MkFitGeometryESProducer::MatHistBin.weight, MuIsolatorResultProducer< BT >::DepositConf.weight, DTTrigTest.weight, PrimaryVertexMonitor.weight, FastLineRecognition::Cluster.weight, classes.MonitorData.weight, HLTBitAnalyzer.weight, GeneralPurposeVertexAnalyzer.weight, HGCalCLUEAlgoT< TILE, STRATEGY >::CellsOnLayer.weight, HGCalImagingAlgo::Hexel.weight, and areaInfo.weight.

Referenced by dirstructure.Directory.print_report().

97  def calcStats(self,make_pie=True):
98  '''Walk all subdirs and calculate weight,fails and successes.
99  Moreove propagate the sample and releases names.
100  '''
101  if self.stats_calculated:
102  return 0
103 
104  self.n_fails=0
105  self.n_successes=0
106  self.n_nulls=0
107  self.n_comp_fails=0
108  self.n_comp_successes=0
109  self.n_comp_nulls=0
110  self.weight=0
111 
112  self.n_skiped = 0
113  self.n_comp_skiped = 0
114  self.n_missing_objs = len(self.different_histograms['file1'])+len(self.different_histograms['file2'])
115  if self.n_missing_objs != 0:
116  print(" [*] Missing in %s: %s" %(self.filename1, self.different_histograms['file1']))
117  print(" [*] Missing in %s: %s" %(self.filename2, self.different_histograms['file2']))
118  # clean from empty dirs
119  self.subdirs = [subdir for subdir in self.subdirs if not subdir.is_empty()]
120 
121  for comp in self.comparisons:
122  if comp.status == SKIPED: #in case its in black list & skiped
123  self.n_skiped += 1
124  self.n_comp_skiped += 1
125  self.weight+=1
126  else: #else original code -> to check for Fails and Successes
127  self.rank_histo.Fill(comp.rank)
128  self.weight+=1
129  if comp.status == FAIL:
130  self.n_fails+=1
131  self.n_comp_fails+=1
132  elif comp.status == SUCCESS:
133  self.n_successes+=1
134  self.n_comp_successes+=1
135  else:
136  self.n_nulls+=1
137  self.n_comp_nulls+=1
138 
139  for subdir in self.subdirs:
140  subdir.mother_dir=join(self.mother_dir,self.name)
141  subdir.full_path = join(self.mother_dir,self.name).replace("/Run summary","")
142  subdir.calcStats(make_pie)
143  subdir.meta=self.meta
144  self.weight+=subdir.weight
145  self.n_fails+=subdir.n_fails
146  self.n_successes+=subdir.n_successes
147  self.n_nulls+=subdir.n_nulls
148 
149  self.n_skiped+=subdir.n_skiped
150  self.n_missing_objs += subdir.n_missing_objs
151 
152  self.rank_histo.Add(subdir.rank_histo)
153 
154  self.stats_calculated=True
155  self.full_path = join(self.mother_dir,self.name).replace("/Run summary","")
156  #if make_pie:
157  #self.__create_pie_image()
158 
def replace(string, replacements)
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47
static std::string join(char **cmd)
Definition: RemoteFile.cc:19

◆ get_fail_rate()

def dirstructure.Directory.get_fail_rate (   self)

◆ get_null_rate()

def dirstructure.Directory.get_null_rate (   self)

◆ get_piechart_js()

def dirstructure.Directory.get_piechart_js (   self,
  w = 400,
  link = None 
)
Build the HTML snippet to render a piechart with chart.js

Definition at line 171 of file dirstructure.py.

References dirstructure.Directory.get_fail_rate(), dirstructure.Directory.get_null_rate(), dirstructure.Directory.get_skiped_rate(), and dirstructure.Directory.get_success_rate().

171  def get_piechart_js(self,w=400,link=None):
172 
173  """
174  Build the HTML snippet to render a piechart with chart.js
175  """
176  if self.get_success_rate()>=99.9: # if the success rate is very high let's make the page lighter
177  img_link = "https://raw.githubusercontent.com/cms-PdmV/RelMonService2/5ee98db210c0898fd34b4deac3653fa2bdff269b/report_website/lime_circle.png"
178  html ='<img src="%s" height=%d width=%d>' %(img_link,w,w)
179  if link is not None:
180  html = '<a href="%s"> %s </a>' %(link,html)
181  return html
182 
183  name = random.getrandbits(64) # just a random has for the canvas
184  html = ""
185  html += '<canvas id="%s" height=%d width=%d></canvas>'%(name,w,w)
186  # piechart
187  html += '<script> new Chart("%s",'%(name)
188  html += '{ type: "pie",'
189 
190  # data
191  html += 'data: {'
192  html += 'labels: ["Success", "Null" , "Failure", "Skipped"],'
193  html += 'datasets: [{ backgroundColor: ["lime","yellow","red","grey"],'
194  html += 'data: [%.2f,%.2f,%.2f,%.2f]}] },'%(self.get_success_rate(),self.get_null_rate(),self.get_fail_rate(),self.get_skiped_rate())
195 
196  #display options
197  html += 'options: { '
198 
199  if link is not None:
200  html += 'onClick : function(event) { window.open("%s", "_blank");},'%(link)
201 
202 
203  html +='legend: { display: false }, responsive : false, hover: {mode: null}, tooltips: {enabled: false}'
204  #tooltips: {enabled: false}, hover: {mode: null},'
205 
206  html += '}}); </script>'
207 
208  return html
209 

◆ get_skiped_rate()

def dirstructure.Directory.get_skiped_rate (   self)

◆ get_subdirs_dict()

def dirstructure.Directory.get_subdirs_dict (   self)

Definition at line 159 of file dirstructure.py.

References dirstructure.Directory.subdirs.

159  def get_subdirs_dict(self):
160  subdirdict={}
161  for subdir in self.subdirs:
162  subdirdict[subdir.name]=subdir
163  return subdirdict
164 

◆ get_subdirs_names()

def dirstructure.Directory.get_subdirs_names (   self)

Definition at line 165 of file dirstructure.py.

References dirstructure.Directory.subdirs.

165  def get_subdirs_names(self):
166  subdirnames=[]
167  for subdir in self.subdirs:
168  subdirnames.append(subdir.name)
169  return subdirnames
170 

◆ get_success_rate()

def dirstructure.Directory.get_success_rate (   self)

◆ get_summary_chart_name()

def dirstructure.Directory.get_summary_chart_name (   self)

Definition at line 260 of file dirstructure.py.

References dirstructure.Directory.__get_full_path(), and join().

Referenced by dirstructure.Directory.__create_pie_image().

260  def get_summary_chart_name(self):
261  return join(self.__get_full_path(),"summary_chart.png")
262 
static std::string join(char **cmd)
Definition: RemoteFile.cc:19

◆ is_empty()

def dirstructure.Directory.is_empty (   self)

Definition at line 92 of file dirstructure.py.

References dirstructure.Directory.comparisons, and dirstructure.Directory.subdirs.

Referenced by dirstructure.Directory.__repr__(), and utils_v2.StatisticalTest.do_test().

92  def is_empty(self):
93  if len(self.subdirs)==0 and len(self.comparisons)==0:
94  return True
95  return False
96 
def is_empty(h)
Definition: utils.py:179

◆ print_report()

def dirstructure.Directory.print_report (   self,
  indent = "",
  verbose = False 
)

Definition at line 210 of file dirstructure.py.

References dirstructure.Directory.calcStats(), dirstructure.Directory.comparisons, dirstructure.Directory.get_fail_rate(), dirstructure.Directory.get_null_rate(), dirstructure.Directory.get_skiped_rate(), dirstructure.Directory.get_success_rate(), dirstructure.Directory.mother_dir, dirstructure.Directory.n_fails, dirstructure.Directory.n_missing_objs, dirstructure.Directory.n_nulls, dirstructure.Directory.n_skiped, dirstructure.Directory.n_successes, ElectronMVAID.ElectronMVAID.name, AlignableObjectId::entry.name, average.Average.name, counter.Counter.name, histograms.Histograms.name, cond::persistency::RUN_INFO::RUN_NUMBER.name, cond::persistency::TAG::NAME.name, TmModule.name, FWLite.ElectronMVAID.name, cond::persistency::GTEditorData.name, cond::persistency::GLOBAL_TAG::NAME.name, cond::persistency::RUN_INFO::START_TIME.name, cond::persistency::TAG::TIME_TYPE.name, cond::persistency::GLOBAL_TAG::VALIDITY.name, core.autovars.NTupleVariable.name, cond::persistency::RUN_INFO::END_TIME.name, cond::persistency::TAG::OBJECT_TYPE.name, cond::persistency::GLOBAL_TAG::DESCRIPTION.name, cond::persistency::TAG::SYNCHRONIZATION.name, DQMRivetClient::NormOption.name, cond::persistency::GLOBAL_TAG::RELEASE.name, cond::persistency::TAG::END_OF_VALIDITY.name, MEPSet.name, cond::persistency::GLOBAL_TAG::SNAPSHOT_TIME.name, cond::persistency::GLOBAL_TAG::INSERTION_TIME.name, cond::persistency::O2O_RUN::JOB_NAME.name, cond::persistency::TAG::DESCRIPTION.name, cms::dd::NameValuePair< T >.name, cond::persistency::O2O_RUN::START_TIME.name, cond::persistency::TAG::LAST_VALIDATED_TIME.name, cond::persistency::O2O_RUN::END_TIME.name, cond::persistency::TAG::INSERTION_TIME.name, FWTGeoRecoGeometry::Info.name, cond::persistency::O2O_RUN::STATUS_CODE.name, cond::persistency::TAG::MODIFICATION_TIME.name, cond::persistency::O2O_RUN::LOG.name, ParameterSet.name, nanoaod::MergeableCounterTable::SingleColumn< T >.name, cond::persistency::TAG::PROTECTION_CODE.name, OutputMEPSet.name, AlignmentConstraint.name, PixelDCSObject< T >::Item.name, dataset.BaseDataset.name, SummaryTableOutputBranches::NamedBranchPtr.name, cms::dd::ValuePair< T, U >.name, fit::RootMinuitCommand.name, HcalForwardLibWriter::FileHandle.name, personalPlayback.Applet.name, EventStringOutputBranches::NamedBranchPtr.name, Types._Untracked.name, MagCylinder.name, analyzer.Analyzer.name, production_tasks.Task.name, heppy::ParSet.name, DQMRivetClient::LumiOption.name, cond::persistency::GTProxyData.name, TriggerOutputBranches::NamedBranchPtr.name, CharmTagger::MVAVar.name, SingleObjectCondition.name, edm::PathTimingSummary.name, TableOutputBranches::NamedBranchPtr.name, HeavyIonCSVTagger::MVAVar.name, DQMRivetClient::ScaleFactorOption.name, cms::DDAlgoArguments.name, EgHLTOfflineSummaryClient::SumHistBinData.name, RHStopTracer::StopPoint.name, Barrel.name, perftools::EdmEventSize::BranchRecord.name, core.autovars.NTupleObjectType.name, cond::TimeTypeSpecs.name, EcalLogicID.name, LumiOutputBranches::NamedBranchPtr.name, edm::PathSummary.name, lumi::TriggerInfo.name, PixelEndcapLinkMaker::Item.name, XMLProcessor::_loaderBaseConfig.name, MEtoEDM< T >::MEtoEDMObject.name, dirstructure.Weighted.name, FWTableViewManager::TableEntry.name, PixelBarrelLinkMaker::Item.name, ExpressionHisto< T >.name, DQMGenericClient::EfficOption.name, python.rootplot.utilities.Hist2D.name, TreeCrawler.Package.name, Supermodule.name, cond::persistency::GLOBAL_TAG_MAP::GLOBAL_TAG_NAME.name, CaloTrkProcessing::Detector.name, cond::persistency::GLOBAL_TAG_MAP::RECORD.name, options.ConnectionHLTMenu.name, cond::persistency::GLOBAL_TAG_MAP::LABEL.name, MVAVar.name, cms::DDParsingContext::CompositeMaterial.name, cond::persistency::GLOBAL_TAG_MAP::TAG_NAME.name, DisplayManager.DisplayManager.name, cond::Tag_t.name, FWLite.WorkingPoints.name, dqmoffline::l1t::HistDefinition.name, DQMGenericClient::ProfileOption.name, magneticfield::BaseVolumeHandle.name, nanoaod::MergeableCounterTable::VectorColumn< T >.name, FastHFShowerLibrary.name, emtf::Node.name, PhysicsTools::Variable::Value.name, h4DSegm.name, PrintMaterialBudgetInfo.name, BTagProbabilityToDiscriminator::Discriminator.name, DQMGenericClient::NormOption.name, core.TriggerMatchAnalyzer.TriggerMatchAnalyzer.name, DQMGenericClient::CDOption.name, CounterChecker.name, cond::TagInfo_t.name, TrackerSectorStruct.name, MuonGeometrySanityCheckPoint.name, PhysicsTools::Calibration::Variable.name, cond::persistency::PAYLOAD::HASH.name, DQMGenericClient::NoFlowOption.name, EDMtoMEConverter.name, looper.Looper.name, Mapper::definition< ScannerT >.name, cond::persistency::PAYLOAD::OBJECT_TYPE.name, cond::persistency::PAYLOAD::DATA.name, python.rootplot.tree2hists.Plot.name, cond::persistency::PAYLOAD::STREAMER_INFO.name, cond::persistency::PAYLOAD::VERSION.name, cond::persistency::PAYLOAD::INSERTION_TIME.name, PhysicsTools::TreeReader::Value.name, classes.MonitorData.name, PhysicsTools::ProcessRegistry< Base_t, CalibBase_t, Parent_t >.name, HistogramManager.name, classes.OutputData.name, BPHDecayToResResBuilderBase::DZSelect.name, Crystal.name, h2DSegm.name, options.HLTProcessOptions.name, cond::persistency::IOV::TAG_NAME.name, cond::persistency::IOV::SINCE.name, cond::persistency::IOV::PAYLOAD_HASH.name, cond::persistency::IOV::INSERTION_TIME.name, DQMNet::WaitObject.name, core.TriggerBitAnalyzer.TriggerBitAnalyzer.name, python.rootplot.utilities.Hist.name, AlpgenParameterName.name, config.Analyzer.name, geometry.Structure.name, hDigis.name, core.autovars.NTupleSubObject.name, Capsule.name, core.autovars.NTupleObject.name, Ceramic.name, SiStripMonitorDigi.name, PhysicsTools::Variable.name, config.Service.name, BulkSilicon.name, adaptToRunAtMiniAOD.adaptToRunAtMiniAOD.name, APD.name, core.autovars.NTupleCollection.name, BPHRecoBuilder::BPHRecoSource.name, CaloSD::Detector.name, nanoaod::FlatTable::Column.name, BPHRecoBuilder::BPHCompSource.name, StraightTrackAlignment::RPSetPlots.name, cond::persistency::TAG_AUTHORIZATION::TAG_NAME.name, cond::persistency::TAG_AUTHORIZATION::ACCESS_TYPE.name, cond::persistency::TAG_AUTHORIZATION::CREDENTIAL.name, cond::persistency::TAG_AUTHORIZATION::CREDENTIAL_TYPE.name, InnerLayerVolume.name, NanoAODDQM::SelGroupConfig.name, cond::payloadInspector::TagReference.name, cond::persistency::TAG_LOG::TAG_NAME.name, cond::persistency::TAG_LOG::EVENT_TIME.name, cond::persistency::TAG_LOG::USER_NAME.name, cond::persistency::TAG_LOG::HOST_NAME.name, cond::persistency::TAG_LOG::COMMAND.name, cond::persistency::TAG_LOG::ACTION.name, cond::persistency::TAG_LOG::USER_TEXT.name, personalPlayback.FrameworkJob.name, Grid.name, trklet::TrackletConfigBuilder::DTCinfo.name, Grille.name, BackPipe.name, plotscripts.SawTeethFunction.name, PatchPanel.name, BackCoolTank.name, DryAirTube.name, python.rootplot.utilities.RootFile.name, crabFunctions.CrabTask.name, MBCoolTube.name, hHits.name, MBManif.name, cscdqm::ParHistoDef.name, hDeltaR.name, hTMaxCell.name, hParam.name, hMuonStat.name, hTOF.name, hTDelay.name, hTimes< hTime >.name, SummaryOutputProducer::GenericSummary.name, print(), dirstructure.Directory.subdirs, RPCDQMObject::DQMObjectItem.weight, TtFullLepKinSolver::NeutrinoSolution.weight, JetAnaPythia< Jet >.weight, lheh5::EventHeader.weight, ZIterativeAlgorithmWithFit::ZIterativeAlgorithmWithFitPlots.weight, ExtendedPerigeeTrajectoryError.weight, SeedCandidate.weight, LutXml::_Config.weight, materialEffect::Effect.weight, L1Analysis::L1AnalysisGeneratorDataFormat.weight, dirstructure.Weighted.weight, MkFitGeometryESProducer::MatHistBin.weight, MuIsolatorResultProducer< BT >::DepositConf.weight, DTTrigTest.weight, PrimaryVertexMonitor.weight, FastLineRecognition::Cluster.weight, classes.MonitorData.weight, HLTBitAnalyzer.weight, GeneralPurposeVertexAnalyzer.weight, HGCalCLUEAlgoT< TILE, STRATEGY >::CellsOnLayer.weight, HGCalImagingAlgo::Hexel.weight, and areaInfo.weight.

210  def print_report(self,indent="",verbose=False):
211  if len(indent)==0:
212  self.calcStats(make_pie=False)
213  # print small failure report
214  if verbose:
215  fail_comps=[comp for comp in self.comparisons if comp.status==FAIL]
216  fail_comps=sorted(fail_comps,key=lambda comp:comp.name )
217  if len(fail_comps)>0:
218  print(indent+"* %s/%s:" %(self.mother_dir,self.name))
219  for comp in fail_comps:
220  print(indent+" - %s: %s Test Failed (pval = %s) " %(comp.name,comp.test_name,comp.rank))
221  for subdir in self.subdirs:
222  subdir.print_report(indent+" ",verbose)
223 
224  if len(indent)==0:
225  print("\n%s - summary of %s tests:" %(self.name,self.weight))
226  print(" o Failiures: %.2f%% (%s/%s)" %(self.get_fail_rate(),self.n_fails,self.weight))
227  print(" o Nulls: %.2f%% (%s/%s) " %(self.get_null_rate(),self.n_nulls,self.weight))
228  print(" o Successes: %.2f%% (%s/%s) " %(self.get_success_rate(),self.n_successes,self.weight))
229  print(" o Skipped: %.2f%% (%s/%s) " %(self.get_skiped_rate(),self.n_skiped,self.weight))
230  print(" o Missing objects: %s" %(self.n_missing_objs))
231 
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47

◆ prune()

def dirstructure.Directory.prune (   self,
  expandable_dir 
)
Eliminate from the tree the directory the expandable ones.

Definition at line 299 of file dirstructure.py.

References mps_setup.append, dirstructure.Directory.comparisons, dirstructure.Directory.n_comp_fails, dirstructure.Directory.n_comp_nulls, dirstructure.Directory.n_comp_skiped, dirstructure.Directory.n_comp_successes, print(), TtEventPartons.prune(), PFMultiDepthClusterizer.prune(), dirstructure.Directory.prune(), Config.Process.prune(), and dirstructure.Directory.subdirs.

Referenced by dirstructure.Directory.prune().

299  def prune(self,expandable_dir):
300  """Eliminate from the tree the directory the expandable ones.
301  """
302  #print "pruning %s" %self.name
303  exp_index=-1
304  counter=0
305  for subdir in self.subdirs:
306  # Eliminate any trace of the expandable path in the mother directories
307  # for depths higher than 1
308  subdir.mother_dir=subdir.mother_dir.replace("/"+expandable_dir,"")
309  if subdir.name==expandable_dir:
310  exp_index=counter
311  counter+=1
312 
313  # Did we find an expandable?
314  if exp_index>=0:
315  exp_dir=self.subdirs[exp_index]
316  for subsubdir in exp_dir.subdirs:
317  #print "*******",subsubdir.mother_dir,
318  subsubdir.mother_dir=subsubdir.mother_dir.replace("/"+expandable_dir,"")
319  while "//" in subsubdir.mother_dir:
320  print(subsubdir.mother_dir)
321  subsubdir.mother_dir=subsubdir.mother_dir.replace("//","/")
322  #print "*******",subsubdir.mother_dir
323  self.subdirs.append(subsubdir)
324 
325  for comp in exp_dir.comparisons:
326  comp.mother_dir=comp.mother_dir.replace("/"+expandable_dir,"")
327  while "//" in comp.mother_dir:
328  comp.mother_dir
329  comp.mother_dir=comp.mother_dir.replace("/")
330  if not comp in self.comparisons: #in case not to append same comparisons few times
331  self.comparisons.append(comp) # add a comparison
332  self.n_comp_fails = exp_dir.n_comp_fails #copy to-be removed directory
333  self.n_comp_nulls = exp_dir.n_comp_nulls # numbers to parent directory
334  self.n_comp_successes = exp_dir.n_comp_successes
335  self.n_comp_skiped = exp_dir.n_comp_skiped
336 
337  del self.subdirs[exp_index]
338  self.prune(expandable_dir)
339 
340  for subdir in self.subdirs:
341  subdir.prune(expandable_dir)
342 
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47

Member Data Documentation

◆ comparisons

dirstructure.Directory.comparisons

◆ different_histograms

dirstructure.Directory.different_histograms

◆ do_pngs

dirstructure.Directory.do_pngs

Definition at line 81 of file dirstructure.py.

Referenced by dqm_interfaces.DirWalkerDB.run().

◆ draw_success

dirstructure.Directory.draw_success

Definition at line 80 of file dirstructure.py.

◆ filename1

dirstructure.Directory.filename1

Definition at line 87 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats().

◆ filename2

dirstructure.Directory.filename2

Definition at line 88 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats().

◆ full_path

dirstructure.Directory.full_path

Definition at line 90 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats().

◆ meta

dirstructure.Directory.meta

Definition at line 66 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats().

◆ mother_dir

dirstructure.Directory.mother_dir

◆ n_comp_fails

dirstructure.Directory.n_comp_fails

◆ n_comp_nulls

dirstructure.Directory.n_comp_nulls

◆ n_comp_skiped

dirstructure.Directory.n_comp_skiped

◆ n_comp_successes

dirstructure.Directory.n_comp_successes

◆ n_fails

dirstructure.Directory.n_fails

◆ n_missing_objs

dirstructure.Directory.n_missing_objs

◆ n_nulls

dirstructure.Directory.n_nulls

◆ n_skiped

dirstructure.Directory.n_skiped

◆ n_successes

dirstructure.Directory.n_successes

◆ rank_histo

dirstructure.Directory.rank_histo

Definition at line 82 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats().

◆ stats_calculated

dirstructure.Directory.stats_calculated

Definition at line 78 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats().

◆ subdirs

dirstructure.Directory.subdirs

◆ weight

dirstructure.Directory.weight

Definition at line 77 of file dirstructure.py.