group_name -> #idle""") parser.add_option("-d", "--debug", action="store_true", help="Enable debug mode for logging") parser.add_option("-l", "--logfile", action="store", default=c.panda_logfile, help="File to log information to ('-' for stderr)") options, args = parser.parse_args() loglevel = logging.DEBUG if options.debug else c.log_level log = setup_logging(options.logfile, backup=3, size_mb=20, level=loglevel) if not args or len(args) != 1: print >> sys.stderr, "Wrong number of arguments!" sys.exit(1) modules = load_module_path(args[0]) if modules is None: sys.exit(1) elif len(modules) < 1: log.warning("No modules found to be loaded!") sys.exit(0) log.debug("Loaded %d module(s): %s", len(modules), ", ".join(x.__name__ for x in modules))
help="Issue a condor_reconfig after a change is detected") parser.add_option("-d", "--debug", action="store_true", dest="level", default=False, help="Log more verbosely (DEBUG level)") opts, args = parser.parse_args() opts.level = logging.DEBUG if opts.level else logging.INFO if len(args) != 1: parser.error("Need exactly one argument (the config file to write to)") return opts, args[0] if __name__ == '__main__': options, quota_file = parse_options() log = setup_logging(options.log, backup=2, size_mb=20, level=options.level) db_groups = get_db_groups() fp_groups = get_file_groups(quota_file) if db_groups.full_cmp(fp_groups): log.debug('No Database Change...') sys.exit(0) # Write the DB groups to the file overwrite_file(db_groups, quota_file, options.backup) changes = fp_groups.get_diff_str(db_groups) log.info('Changes made are:') for line in changes.split("\n"): if line:
# 08/24/15: rewrite for using gq library import sys import MySQLdb import datetime import subprocess import gq.config as c import gq.config.dbconn as db from gq.group import AbstractGroup from gq.group.db import _build_groups_db from gq.log import setup_logging log = setup_logging(None) class BusyGroup(AbstractGroup): def __init__(self, name): super(BusyGroup, self).__init__(name) self.busy = 0 def get_condor_groups(): """ Yield a series of tuples of (group, count) where count is the number of cpus (SlotWeight) of that group """ def get_group_from_classad(g):
# CHANGELOG: # 08/24/15: rewrite for using gq library import sys import MySQLdb import datetime import subprocess import gq.config as c import gq.config.dbconn as db from gq.group import AbstractGroup from gq.group.db import _build_groups_db from gq.log import setup_logging log = setup_logging(None) class BusyGroup(AbstractGroup): def __init__(self, name): super(BusyGroup, self).__init__(name) self.busy = 0 def get_condor_groups(): """ Yield a series of tuples of (group, count) where count is the number of cpus (SlotWeight) of that group """ def get_group_from_classad(g): return ".".join(g.split("@")[0].split(".")[:-1])
for group in reversed(list(groups)): log.info(group.color_str()) parser = optparse.OptionParser( epilog="Script to balance the accept-surplus flag for ATLAS" ) parser.add_option("-d", "--debug", action="store_true", help="Enable debug mode for logging") parser.add_option("-l", "--logfile", action="store", default=c.analyze_logfile, help="File to log information to ('-' for stderr)") options, args = parser.parse_args() loglevel = logging.DEBUG if options.debug else c.log_level log = setup_logging(options.logfile, backup=3, size_mb=50, level=loglevel) field_map = {'group_name': 'name', 'accept_surplus': 'surplus', 'surplus_threshold': 'threshold', 'weight': 'weight'} if __name__ == "__main__": try: log.info("===================== START Balance =======================") groups = group_db.build_demand_groups_db() idle.populate_demand(groups) log.info("Current Groups:") log_group_tree(groups) balance.calculate_surplus(groups)
dest="level", default=False, help="Log more verbosely (DEBUG level)") opts, args = parser.parse_args() opts.level = logging.DEBUG if opts.level else logging.INFO if len(args) != 1: parser.error("Need exactly one argument (the config file to write to)") return opts, args[0] if __name__ == '__main__': options, quota_file = parse_options() log = setup_logging(options.log, backup=2, size_mb=20, level=options.level) db_groups = get_db_groups() fp_groups = get_file_groups(quota_file) if db_groups.full_cmp(fp_groups): log.debug('No Database Change...') sys.exit(0) # Write the DB groups to the file overwrite_file(db_groups, quota_file, options.backup) changes = fp_groups.get_diff_str(db_groups) log.info('Changes made are:') for line in changes.split("\n"): if line: