Doc: measurements: add doc on Cinder/Swift config

Some meters need Cinder/Swift to be configured in a particular fashion to work.
Add links to the configuration bits regarding Cinder and Swift.

Change-Id: I68a605e5152fc3d15bb06f63066edd5390a2dfa7
Add support for API message localization

Using the lazy gettext functionality from oslo gettextutils,
it is possible to use the Accept-Language header to translate
an exception message to the user requested locale and return
that translation from the API.

Implements bp user-locale-api

Change-Id: I48de5e681827305eef60c7a77e8d3091f9d64be0
Co-authored-by: Mathew Odden <mrodden@us.ibm.com>
Co-authored-by: Ben Nemec <openstack@nemebean.com>
Handle more Nova and Neutron events

This introduces a simpler matching system for event types that supports
wildcard. We use this to grab all Nova instances notifications and a bit
more Neutron events.

We also change the get_event_types to a property to simplify the code a
bit.

Change-Id: Ica133ff2e9348a5d2640f068251d034bbd8a4f43
Change meter.resource_metadata column type

The existing schema limits for meter.resource_metadata column to
5000 characters, which may not be enough for a large metadata
payload encoded as JSON.
Using a Text column will let us store an arbitrary amount of data
in that column without worrying about overflowing.

Closes-Bug: #1204638

Change-Id: I5eb1cdbb3d4770a8348682634a78ccb0f843c141
Include previous state in alarm notification

We now provide both the current and previous alarm states
in the notification.

This allows differential logic to be applied by the webhook
implementation, for example depending on whether the previous
state was known or insufficient data.

It also allows the initial and subsequent notifications to be
distinguished for repeat_actions alarms, without resorting to
fragile string comparisons between 'Transition to ...' and
'Remaining as ...'.

Change-Id: I61294e98ddf504b3ab22e9b16ab718d64c27486f
Merge "Doc: measurements: add doc on Cinder/Swift config"
Merge "Change meter.resource_metadata column type"
s/alarm/alarm_id/ in alarm notification

During the review cycle for the alarm notifier, the notification payload
was changed from containing the entire alarm representation to just the
alarm UUID.

However, the field name remained as 'alarm' which could be confusing.

Hence, we change this to alarm_id.

Change-Id: I5d9409df92010c7c89ad1f108b074bbf8487bb90
Merge "Handle more Nova and Neutron events"
Merge "Include previous state in alarm notification"
Merge "s/alarm/alarm_id/ in alarm notification"
Merge "Add support for API message localization"