X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/1a3ec903e591304b72bd0d394219729ac76bfed0..02d6330526fbd94f4a1d711ee6ffc18a1553febf:/sdk/python/bin/arv-ws diff --git a/sdk/python/bin/arv-ws b/sdk/python/bin/arv-ws index 07216879a9..58b628145f 100755 --- a/sdk/python/bin/arv-ws +++ b/sdk/python/bin/arv-ws @@ -1,34 +1,30 @@ #!/usr/bin/env python -import argparse import sys +import logging +import argparse +import arvados +from arvados.events import subscribe parser = argparse.ArgumentParser() parser.add_argument('-u', '--uuid', type=str, default="") args = parser.parse_args() -def on_message(ev): - print "\n", ev - filters = [] -if len(args.uuid)>0: - filter1 = [] - filter1.append ('object_uuid') - filter1.append ('=') - filter1.append (args.uuid) - filters.append (filter1) - -import arvados -from arvados.events import subscribe +if len(args.uuid)>0: filters = [ ['object_uuid', '=', args.uuid] ] api = arvados.api('v1', cache=False) +def on_message(ev): + print "\n", ev + ws = None try: ws = subscribe(api, filters, lambda ev: on_message(ev)) ws.run_forever() +except KeyboardInterrupt: + print '' # don't log it except: + logging.exception('') if (ws): ws.close_connection() - else: - sys.exc_info()