3 from contentValuesLib
import *
6 """ Option parser class """
8 optparse.OptionParser.__init__(self, usage=
"%prog [options] root_file ...", version=
"%prog 0.0.1", conflict_handler=
"resolve")
9 self.add_option(
"--url", action=
"store", type=
"string", dest=
"url", default=SERVER_URL, help=
"specify DBS DQM XML-RPC server URL. Default is " + SERVER_URL)
10 self.add_option(
"--debug",
"-d", action=
"store_true", dest=
"debug", default=
False, help=
"print values and exit. Do not write to DBS")
11 self.add_option(
"--shift",
"-s", action=
"store", type=
"choice", dest=
"shift", default=
"offline", choices=(
"online",
"offline"), help=
"specify shift type: online or offline values allowed")
12 self.add_option(
"--filter",
"-f", action=
"store", type=
"string", dest=
"filter", default=
None, help=
"Specify filters in the form \"('subsystem','folder','value')\" in regexp expression. Default is None and this takes all the subsystems, all folders and allvalues")
14 if __name__ ==
"__main__":
18 (opts, args) = optManager.parse_args()
23 print "At least one ROOT file must be priovided, use --help for hit"
31 print "File [", rfile,
"] not exists or is not accessible?"
37 server = xmlrpclib.ServerProxy(opts[
'url'])
43 (run_number, values) =
getSummaryValues(file_name = rfile, shift_type = opts[
'shift'], translate =
True, filters = filter)
46 if run_number ==
None:
47 print "Run number does not determined. Skipping file: %s" % rfile
51 print "Dataset name do not determined. Skipping file: %s" % rfile
54 if values ==
None or len(values) == 0:
55 print "No content summary values found. Skipping file: %s" % rfile
60 print "Run number: %d" % run_number
61 print "Dataset: %s" % dataset
62 print "Data: ", values
64 result = server.insertdq_auto(run_number, dataset, values)
65 print "DBS DQM: %d rows modified for run %d dataset %s" % (result, run_number, dataset)
66 except xmlrpclib.Error, errstring:
67 print "ERROR", errstring