Ignore:
Timestamp:
Jul 28, 2009 10:57:38 AM (15 years ago)
Author:
Ted Faber <faber@…>
Branches:
axis_example, compt_changes, info-ops, master, version-1.30, version-2.00, version-3.01, version-3.02
Children:
d15522f
Parents:
3c20a31
Message:

termination logs, a terminating state, and avoiding a deadlock

File:
1 edited

Legend:

Unmodified
Added
Removed
  • fedd/fedd_client.py

    r3c20a31 r46e4682  
    163163                action="store_true", default=False,
    164164                help="Force termination if experiment is in strange state")
     165        self.add_option("--logfile", dest="logfile", default=None,
     166                help="File to write log to")
     167        self.add_option("--print_log", dest="print_log", default=False,
     168                action="store_true",
     169                help="Print deallocation log to standard output")
    165170
    166171class fedd_multi_exp_data_opts(fedd_client_opts):
     
    10541059        if opts.exp_name and opts.exp_certfile:
    10551060            sys.exit("Only one of --experiment_cert and " +\
    1056                     "--experiment_name permitted");
     1061                    "--experiment_name permitted")
     1062
     1063        if opts.print_log and opts.logfile:
     1064            sys.exit("Only one of --logfile and --print_log is permitted")
     1065        elif opts.print_log:
     1066            out = sys.stdout
     1067        elif opts.logfile:
     1068            try:
     1069                out = open(opts.logfile, "w")
     1070            except IOError,e:
     1071                sys.exit("Cannot open logfile: %s" %e)
     1072        else:
     1073            out = None
    10571074
    10581075        exp_id = None
     
    10821099            sys.exit("Error processing RPC: %s" % e)
    10831100
    1084         eid = resp_dict.get('experimentID', None)
    1085         if eid:
    1086             for id in eid:
    1087                 for k in id.keys():
    1088                     if k == 'fedid': print "%s: %s" % (k,fedid(bits=id[k]))
    1089                     else: print "%s: %s" % (k, id[k])
     1101        if out:
     1102            log = resp_dict.get('deallocationLog', None)
     1103            if log:
     1104                print >>out, log
     1105                out.close()
     1106            else:
     1107                out.close()
     1108                sys.exit("No log returned")
    10901109
    10911110class create(fedd_rpc):
Note: See TracChangeset for help on using the changeset viewer.