Make command log in neutron utils.execute() a single line

command execution log from neutron.agent.linux.utils.execute()
consists of multiple lines, and the first line has less information
and it is hard to analyze logs.

Closes-Bug: #1460379
Change-Id: Idca38f26321394596245c9c59b8a9a78c7190423
This commit is contained in:
Akihiro Motoki 2015-11-08 03:07:02 +09:00
parent 68107d2a47
commit b572376f3f
2 changed files with 7 additions and 4 deletions

View File

@ -149,9 +149,11 @@ def execute(cmd, process_input=None, addl_env=None,
m += _("Stdin: %(stdin)s\n"
"Stdout: %(stdout)s\n"
"Stderr: %(stderr)s") % command_str
LOG.error(m)
log_msg = m.strip().replace('\n', '; ')
LOG.error(log_msg)
else:
LOG.debug(m)
log_msg = m.strip().replace('\n', '; ')
LOG.debug(log_msg)
if returncode and check_exit_code:
raise RuntimeError(m)

View File

@ -81,10 +81,11 @@ def execute(cmd, process_input=None, addl_env=None,
if obj.returncode and obj.returncode in extra_ok_codes:
obj.returncode = None
log_msg = m.strip().replace('\n', '; ')
if obj.returncode and log_fail_as_error:
LOG.error(m)
LOG.error(log_msg)
else:
LOG.debug(m)
LOG.debug(log_msg)
if obj.returncode and check_exit_code:
raise RuntimeError(m)