Project

General

Profile

Actions

Bug #5728

closed

Capture std(err|out) and exit code for better error reporting

Added by Alfredo Deza over 10 years ago. Updated over 10 years ago.

Status:
Resolved
Priority:
High
Assignee:
Category:
ceph-deploy
Target version:
-
% Done:

0%

Source:
other
Tags:
Backport:
Regression:
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

When a remote function is executed and it fails it will usually error out with something similar to:

  ...
  File "/home/ubuntu/ceph-dep/ceph-deploy/virtualenv/lib/python2.6/site-packages/pushy-0.5.1-py2.6.egg/pushy/protocol/baseconnection.py", line 639, in __handle
    raise e
pushy.protocol.proxy.ExceptionProxy: Command '['sudo', 'ceph', '--cluster=ceph', '-n', 'mon.', '-k', 'mon', 'remove', 'burnupi21']' returned non-zero exit status 22

"Exit status 22" is not meaningful at all, and although having the command is handy, it also doesn't represent the problem.

This happens because in a lot of places in ceph-deploy we are just using `subprocess.check_call` which will immediately error out with a similar exception but with no info from stderr because it was not captured explicitly.

Actions #1

Updated by Alfredo Deza over 10 years ago

  • Status changed from New to 7

There is a pull request waiting for testing that enables full logging and actual remote actions in the remote host.

This change will apply only to `ceph-deploy install` as a first phase, and should set the guidelines to convert all the other remote actions for
the rest of the commands.

Pull request: https://github.com/ceph/ceph-deploy/pull/24

Actions #2

Updated by Alfredo Deza over 10 years ago

  • Status changed from 7 to Resolved

Merged into master ceph-deploy

Hash: a451465438174f68e3d6b216c13387fdaa954fe2

Actions

Also available in: Atom PDF