SLAC PEP-II
BABAR
SLAC<->RAL
Babar logo
HEPIC E,S & H Databases PDG HEP preprints
Organization Detector Computing Physics Documentation
Personnel Glossary Sitemap Search Hypernews
Unwrap page!
Comp. Search
Who's who?
Meetings
FAQ Homepage
Archive
Environment
Administration
New User Info.
Web Info/Tools
Monitoring
Training
Tools & Utils
Programming
C++ Standard
SRT, AFS, CVS
QA and QC
Remedy
LIGHT
Histogramming
Operations
PromptReco
Simulation Production
Online SW
Dataflow
Detector Control
Evt Processing
Run Control
Calibration
Databases
Offline
Workbook
Coding Standards
Simulation
Reconstruction
Prompt Reco.
BaBar Grid
Data Distribution
Beta & BetaTools
Kanga & Root
RooFit Toolkit
Data Management
Event display
Event Browser
Code releases
Databases
Check this page for HTML 4.01 Transitional compliance with the
W3C Validator
(More checks...)

The OprQaUtils Package


Please see the StripCharts documentation for information on running those scripts.

The current version is V00-02-30.

There are several perl scripts that run the QA. The most used ones are:

  • runQaOpr.pl:
      uses OprQaUtils.pm to setup the job.
      runs OprMerge.pl, OprQaAutoComp.pl.

  • OprQaUtils.pm
      sets directory paths for both INFN and SLAC.

  • OprMerge.pl
      merges all the (filled) hbook files that are produced by OPR into a single file using MergeUtil.pl, and runs OprPlotdev.pl and OprQaAutoComp.pl (if -comp flag used). The individual hbook files come from a FarmDir/RunNumber/hbook. The FarmDir is flagged by the -name option and the the run number(s) by the -run [-lrun] option when running the runQaOpr. The merged.hbook.gz file is kept at /nfs/farm/babar/qa/QaOpr/testqa/hbook/FarmName/RelNum/.


  • OprPlotdev.pl
      runs a PAW kumac to produce the postscript files for monitoring. Appends the procspec of the OPR run to the file name (which is now runnumber-timeprocessed-procspec.ps). Creates the png file for the new web page. The output .ps file is stored at /nfs/farm/babar/qa/QaOpr/testqa/psdir/FarmName/RelNum/, and can be accessed via the web.


  • OprQaAutoComp.pl
      generates the log files, and compares the postscript file (using DhpMonApp.pl and the comparison results file reference/comparison.res) to the references. These now are an option, and can be turned on using the -comp flag. The files are stored at /nfs/farm/babar/qa/QaOpr/testqa/logdir/#FarmName#/#release#/ and can be accessed with the .ps files on the web interface. The individual subsystems are listed at the top of each run's page, for direct assess. There are also flags that can be set for run quality.


  • DhpWebdev.pl
      creates the webpage and posts the .ps and the .log files to the old webarea. Is currently run every 3 hours by a cron job.


The reference directory contains files that work with OprQaAutoComp.pl to compare a given run with a reference. At the moment, we do not have current reference histograms and so no useful test is performed.

Setup

OprQaUtils has been tested on Linux24 and SunOS5 machines, so either could be used for setup.
The release listed in the setup below is for example purposes, and users should change the release to suit thier purposes.

newrel -t 14.4.0 tmp1440
cd tmp1440
srtpath 14.4.0 [return]
addpkg workdir
addpkg OprQaUtils V00-02-34
gmake workdir.setup
gmake installdirs
gmake OprQaUtils.bin

cd OprQaUtils
runQaOpr -name farmname -run runnumber [-lrun lastrunnumber] -logdir logdir [-rundir rundir] [-procspec procspec] [-test] [-comp] [-pr] [-mc] [-rel release]

It is necessary to specify either the -pr (prompt reco) or -mc (for Monte Carlo running) options.

In order to be site independent, the pl scripts recognise the individual system's file structure because of the opening line is:
#!@PERL@ -I@PACKDIR@/bin/@BFARCH@ -w

The OprQaUtils.pm then sets up the directories used within the other scripts (for example it defines a $testrel directory). Currently this is set up for Padova, and not-Padova.

(Since the package is now run automatically by the OPR control system, there is no longer the need to test job ownership. Therefore, the rqm_cronjob_ownerTEST file is not needed for running).


To Run a OprQaUtils job

In your release:
gmake OprQaUtils.bin

Run the runQaOpr (from release/OprQaUtils) using:
../bin/$BFARCH/runQaOpr.pl -run ##### -lrun ##### -name {farmname} -rel ##.#.# [-comp] [-test] [-pr] [-mc]
where the run numbers are the 5 digit numbers in the run's filename. The -comp options switches on the generation of log files. The -test flag prevents the hbook files from being erased so that they can be reused when development is complete.
For development, his code should be run from the release because if run from the workdir or from the package itself, the scripts used are the ones in the RELEASE directory, not the ones that are compiled in the releasedir/bin/BFARCH/ (the ones that bear the changes the user has made).

{SubSystem}QaMonTools

The MonTools packages control the automated comparisons that are made between the produced hbook files and references using DhpMonApp.pl, which is perl emulator of the DhpMonApp executable.

The subsystem situation:

The *MonTools packages should have the following structure for use with OprQaUtils:
  • the subdirectory OprMonTools
  • the files OprMonTools/CRIlookup.table
    OprMonTools/Hbooklookup.table
    OprMonTools/main.cri

Help Files

Help files have now been added to all the main scripts. They should be run using:
../bin/$BFARCH/{script.pl} -h


Farmnames and Directories

PC1 : /nfs/oprserv01/u1/PC1/logfiles
PC2 : /nfs/oprserv02/u1/PC2/logfiles
PC3 : /nfs/oprserv03/u1/PC3/logfiles

ER5 : /nfs/oprserv05/u1/ER5/logfiles
ER6 : /nfs/oprserv06/u1/ER6/logfiles
ER7 : /nfs/oprserv07/u1/ER7/logfiles
ER8 : /nfs/oprserv08/u1/ER8/logfiles
ER9 : /nfs/oprserv04/u1/ER9/logfiles

PCTest: /nfs/oprtest01/u1/PCTest/logfiles
ERTest: /nfs/oprtest01/u1/PCTest/logfiles

OPR : /nfs/oprserv03/u1/theOprLogFiles
OPR2 : /nfs/oprserv04/u1/theOprLogFiles

At Padova:

ER1 : /nfs/opr1/Reprocessing/ER1/logfiles
ER2 : /nfs/opr2/Reprocessing/ER2/logfiles
ER3 : /nfs/opr3/Reprocessing/ER3/logfiles
ER4 : /nfs/opr4/Reprocessing/ER4/logfiles
ERTest: /nfs/opr0/Reprocessing/ERTest/logfiles
Test : /nfs/test/Reprocessing/thePDRepLogFiles

Current Developments

As was suggested at the December 2002 Collaboration Meeting, we have develpoed a new web interface to make the recent runs easy to find, and the subsystem browsing easier. It is now available at here. Currently, we working to speed up the loading of the page and its subpages.

Work is also underway to get more useful output from the log file generator and to possible move back to DhpMonApp instead of using the emulator that Frederic developed. Currently, the Dhp group are working on making their applications platform independent, which is necessary for the QA group since Padova run Sun machines. Testing has found that QA still works using the DhpMonApp system, so transferring to the system should be simple.



Last updated: Mar 26, 2004 by Matthew Barrett.