Cloned from launchpad blueprint https://blueprints.launchpad.net/nova/+spec/improve-instance-action-events-2.
This is a continuation of work related to blueprint improve-instance-action-events.
This BP depends on blueprint make-instance-action-use-objects
Work items including
* Add action reporter in api layer, to catch not only action start time, but also finish time. This data could be useful to track the whole time span (action level) and break down of the whole action level time (event level)
* Original action/events design generate two db access, which is totally unnecessary. Could be written to DB at the ending place. ActionReporter and ActionEventReport guarantee it's happening.
Specification URL (additional information):