Cut too long task result in log

* Added function 'cut()' for cut data to specific length
 * Apply this function to WF_TRACE logging in result output.

Change-Id: Iffca824c8568897790e5a7054031b1a0292e0e45
This commit is contained in:
Nikolay Mahotkin 2014-10-14 15:20:47 +04:00
parent 70f46b0aa5
commit 2435f34afa
2 changed files with 18 additions and 2 deletions

View File

@ -134,3 +134,15 @@ def get_file_list(directory):
return [path.join(base_path, f) for f in os.listdir(base_path) return [path.join(base_path, f) for f in os.listdir(base_path)
if path.isfile(path.join(base_path, f))] if path.isfile(path.join(base_path, f))]
def cut(data, length=100):
if not data:
return data
string = str(data)
if len(string) > length:
return "%s..." % string[:length]
else:
return string

View File

@ -18,6 +18,7 @@ from oslo.config import cfg
from mistral import exceptions as exc from mistral import exceptions as exc
from mistral.openstack.common import log as logging from mistral.openstack.common import log as logging
from mistral import utils
from mistral.workbook import parser as spec_parser from mistral.workbook import parser as spec_parser
from mistral.workflow import data_flow from mistral.workflow import data_flow
from mistral.workflow import states from mistral.workflow import states
@ -78,9 +79,12 @@ class WorkflowHandler(object):
wf_trace_msg += "%s" % task_db.state wf_trace_msg += "%s" % task_db.state
if task_db.state == states.ERROR: if task_db.state == states.ERROR:
WF_TRACE.info(wf_trace_msg + ", error = %s]" % raw_result.error) wf_trace_msg += ", error = %s]" % utils.cut(raw_result.error)
WF_TRACE.info(wf_trace_msg)
else: else:
WF_TRACE.info(wf_trace_msg + ", result = %s]" % raw_result.data) wf_trace_msg += ", result = %s]" % utils.cut(raw_result.data)
WF_TRACE.info(wf_trace_msg)
task_db.output =\ task_db.output =\
data_flow.evaluate_task_output(task_spec, raw_result) data_flow.evaluate_task_output(task_spec, raw_result)