Instance action log

Registered by Ying Zuo

Summary
=======
Currently there's a action log tab on the instance details panel, but it only provides some basic information including the action, start time, user id, and message.

Horizon can make a nova api call to get all the information for the instance action which will help the user to manage instances and debug issues occurred.

Motivation
========
Instance actions are the most common operations and it will be helpful for the user to see more details about the actions without using console or CLI. Also, it will be nice to provide a panel with all instance actions accross projects for the admin users.

Description
=========

1. Instance action details panel:
The request id on the existing action log tab will be shown as a hyperlink to go to a new instance action details panel where all the information that nova has for the action will be displayed. This panel will be available for all users.

Nova API to get the data: instance_action_get

2. Instance action list panel:
A new panel under the admin panel group will list all the instance actions accross projects. It will be a summary table like the one on the exsiting action log tab except that all of the instance actions will be listed. This panel will be accessible by admin only.

Nova API get the data: server_list & instance_action_list

UX
===

Standard table layout for the new panels.

Wireframes, Mocks, Videos and UI Markup
==================================
None

Testing
======
Will be added for the new panels.

Outside Dependencies
==================
None

Requirements Update Required
========================
None

Doc Impact
=========
Release notes.

Blueprint information

Status:
Not started
Approver:
Rob Cresswell
Priority:
Low
Drafter:
Ying Zuo
Direction:
Approved
Assignee:
None
Definition:
Approved
Series goal:
Accepted for future
Implementation:
Not started
Milestone target:
milestone icon next

Related branches

Sprints

Whiteboard

[robcresswell 2016-09-29]
Could you link or detail the extra API call? Would be interested in seeing the type of information you're referring to. Otherwise, this sounds generally reasonable as its just another single api call page/tab.

[yingzuo 2016-09-29]
There are two new panels will be added for this feature. For the Instance action details panel, the API call to get the detail of a specific request is nova instance-action. Below is a sample output of the API.

$ nova instance-action <server id> <req id>
+---------------+----------------------------------------------------+
| Property | Value |
+---------------+----------------------------------------------------+
| action | create |
| events | [{u'event': u'compute__do_build_and_run_instance', |
| | u'finish_time': u'2016-09-21T18:33:35.000000', |
| | u'result': u'Success', |
| | u'start_time': u'2016-09-21T18:33:19.000000', |
| | u'traceback': None}] |
| instance_uuid | ed169444-c371-474e-aad2-d3671d1706db |
| message | - |
| project_id | 0ea41f4bf98448b9b2f594517424aab4 |
| request_id | req-249d9793-63f0-4e31-4cf8-c8f4d4e16aac |
| start_time | 2016-09-21T18:33:17.000000 |
| user_id | 24edb961f98446a582c941db44aed344 |
+---------------+----------------------------------------------------+

For the Instance action list panel(admin only), the information shown on the panel will be similar to the existing audit log tab for an instance but the new panel will show the actions for all instances across projects. It will first make the nova list call then make the nova instance-action-list call for each server to get all the actions.

Added the API information in the blueprint summary Description section.

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.