diff options
author | Joao Eduardo Luis <joao.luis@inktank.com> | 2013-10-16 01:26:48 +0100 |
---|---|---|
committer | Joao Eduardo Luis <joao.luis@inktank.com> | 2013-10-16 01:42:46 +0100 |
commit | bfe5e159f3cbc6856b8256b915d5ad16a55f3402 (patch) | |
tree | 95bda01770299ec0f6fb739b7d80b232026170a2 | |
parent | 2461125173d6bb07f8047b8f4d773a4c3a0f09bb (diff) | |
download | ceph-bfe5e159f3cbc6856b8256b915d5ad16a55f3402.tar.gz |
cli: ceph: add support to ping monitorswip-monc-ping
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
-rwxr-xr-x | src/ceph.in | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/ceph.in b/src/ceph.in index 075ec80c20b..668e639cf4c 100755 --- a/src/ceph.in +++ b/src/ceph.in @@ -158,6 +158,7 @@ def parse_cmdargs(args=None, target=''): parser.add_argument('-f', '--format', choices=['json', 'json-pretty', 'xml', 'xml-pretty', 'plain'], dest='output_format') + parser.add_argument('--ping', action='store_true', help='ping a monitor') # returns a Namespace with the parsed args, and a list of all extras parsed_args, extras = parser.parse_known_args(args) @@ -578,7 +579,19 @@ def main(): return 1 try: - cluster_handle.connect() + if parsed_args.ping: + (r,s) = cluster_handle.ping_monitor() + if r == 0: + print s + return 0 + elif r == -errno.ETIMEDOUT: + print >> sys.stderr, 'Timed out attempting to connect to monitor' + return 1 + else: + print >> sys.stderr, 'Error connecting to monitor: {0}'.format(r) + return 1 + else: + cluster_handle.connect() except KeyboardInterrupt: print >> sys.stderr, 'Cluster connection aborted' return 1 |