Add feature to log operation history of users to Horizon
Summary
=======
To propose adding new feature regarding operation history of users to Horizon.
Motivation
========
In Horizon, a user can manage virtual resources. Usually many people do simultaneously.
When some problem occurred on OpenStack (E.g when some people operated same resources at same time),
an administrator want to know a user who operated, the time when the user operated and the things what the user did.
However at the moment, there is no method to know it.
Therefore even if administrators would like to find the user which did a particular operation (for example, request from a user), they can not do it.
This feature will make possible it.
In addition, by processing log information, this feature can provides audit information for an operator and operation history information for a tenant.
This feature brings about improvement of traceability in Horizon.
Description
=========
This feature is using with Django's middleware and this mechanism is based on python logging.
All operations on Horizon are logged to an external file (it mean, this log file differ from horizon.log).
- E.g login to Horizon, show a overview, show a user list, create a instances and so on.
This log includes information below and a delimiter between attributes is a single space.
<project name>
<project id>
<user name>
<user id>
<referer url>
<request url>
<message>
<method>
<http status>
<parameters>
And this feature is configurable by the administrator.
- Output method selectable(it mean, we can log only POST method, GET method or both of them.)
- Particular word can be masked with this setting. (for example if you set a word 'password',
value of key 'password' is masked '*******' in POST parameters)
There are no effects to existing function.
UX
===
It is log sample below(in the case of updating default quota by an admin).
2016-01-02 00:16:00,830 24869 INFO horizon.
Testing
======
Login to Horizon, and do some operate on it.
And then, all operation which are done above are logged to "operation.log".
Outside Dependencies
==================
N/A
Requirements Update Required
=======
N/A
Doc Impact
=========
This feature has some settings.
Blueprint information
- Status:
- Complete
- Approver:
- Rob Cresswell
- Priority:
- Low
- Drafter:
- Kenji Ishii
- Direction:
- Approved
- Assignee:
- Kenji Ishii
- Definition:
- Approved
- Series goal:
- Accepted for 10.0.0-newton
- Implementation:
- Implemented
- Milestone target:
- newton-1
- Started by
- Kenji Ishii
- Completed by
- Kenji Ishii
Related branches
Related bugs
Sprints
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
Add feature to log an operation of users to Horizon