diff options
author | Rakesh H S <rh-s@hp.com> | 2015-05-19 15:59:36 +0530 |
---|---|---|
committer | Rakesh H S <rh-s@hp.com> | 2015-05-22 10:24:53 +0530 |
commit | ba0ce835a823e8091cbb9c983cba67a0a97ca9ce (patch) | |
tree | ab4fb2383d136084a27635df27d4c812ab5a054b /heatclient/common/utils.py | |
parent | c604876528588fb3f452de7258324e90da8ac202 (diff) | |
download | python-heatclient-ba0ce835a823e8091cbb9c983cba67a0a97ca9ce.tar.gz |
Adds --format=log option to event-list
Provides functionality to print events as log.
Closes-Bug: #1420504
Change-Id: I9bfb9676fbc3dd9d689e2db5bf3202378b344af7
Diffstat (limited to 'heatclient/common/utils.py')
-rw-r--r-- | heatclient/common/utils.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/heatclient/common/utils.py b/heatclient/common/utils.py index 840641f..a64fc64 100644 --- a/heatclient/common/utils.py +++ b/heatclient/common/utils.py @@ -86,6 +86,32 @@ def print_dict(d, formatters=None): print(pt.get_string(sortby='Property')) +def event_log_formatter(events): + """Return the events in log format.""" + event_log = [] + log_format = _("%(event_date)s %(event_time)s %(event_id)s " + "[%(rsrc_name)s]: %(rsrc_status)s %(rsrc_status_reason)s") + for event in events: + event_time = getattr(event, 'event_time', '') + time_date = event_time.split('T') + try: + event_time = time_date[0] + event_date = time_date[1][:-1] + except IndexError: + event_time = event_date = '' + + log = log_format % { + 'event_date': event_date, 'event_time': event_time, + 'event_id': getattr(event, 'id', ''), + 'rsrc_name': getattr(event, 'resource_name', ''), + 'rsrc_status': getattr(event, 'resource_status', ''), + 'rsrc_status_reason': getattr(event, 'resource_status_reason', '') + } + event_log.append(log) + + return "\n".join(event_log) + + def find_resource(manager, name_or_id): """Helper for the _find_* methods.""" # first try to get entity as integer id |