add missing instance meta
flavor_id, flavor_name, display_name and host are required... we need to
include them when we build sample from notification.
host does not exist in compute.instance.create.start messages because
(i assume) nova doesn't know which host to create on yet.
also, when multiple metrics missing same resource, only attempt to
create once.
Change-Id: Ia680ad23608f6712ebce619797e2968f8acc6310
(cherry picked from commit 48d9cb7793
)
This commit is contained in:
parent
a5f78f8d96
commit
320d56c1b3
|
@ -392,8 +392,8 @@ class GnocchiDispatcher(dispatcher.MeterDispatcherBase,
|
|||
|
||||
@staticmethod
|
||||
def _extract_resources_from_error(e, resource_infos):
|
||||
resource_ids = [r['original_resource_id']
|
||||
for r in e.message['detail']]
|
||||
resource_ids = set([r['original_resource_id']
|
||||
for r in e.message['detail']])
|
||||
return [(resource_infos[rid]['resource_type'],
|
||||
resource_infos[rid]['resource'])
|
||||
for rid in resource_ids]
|
||||
|
|
|
@ -109,6 +109,13 @@ metric:
|
|||
project_id: $.payload.tenant_id
|
||||
resource_id: $.payload.instance_id
|
||||
user_metadata: $.payload.metadata
|
||||
metadata: &instance_meta
|
||||
host: $.payload.host
|
||||
flavor_id: $.payload.instance_flavor_id
|
||||
flavor_name: $.payload.instance_type
|
||||
display_name: $.payload.display_name
|
||||
host: $.payload.host
|
||||
image_ref: $.payload.image_meta.base_image_ref
|
||||
|
||||
- name: 'vcpus'
|
||||
event_type: 'compute.instance.*'
|
||||
|
@ -119,6 +126,8 @@ metric:
|
|||
project_id: $.payload.tenant_id
|
||||
resource_id: $.payload.instance_id
|
||||
user_metadata: $.payload.metadata
|
||||
metadata:
|
||||
<<: *instance_meta
|
||||
|
||||
- name: 'compute.instance.booting.time'
|
||||
event_type: 'compute.instance.create.end'
|
||||
|
@ -130,6 +139,8 @@ metric:
|
|||
project_id: $.payload.tenant_id
|
||||
resource_id: $.payload.instance_id
|
||||
user_metadata: $.payload.metadata
|
||||
metadata:
|
||||
<<: *instance_meta
|
||||
|
||||
- name: 'disk.root.size'
|
||||
event_type: 'compute.instance.*'
|
||||
|
@ -140,6 +151,8 @@ metric:
|
|||
project_id: $.payload.tenant_id
|
||||
resource_id: $.payload.instance_id
|
||||
user_metadata: $.payload.metadata
|
||||
metadata:
|
||||
<<: *instance_meta
|
||||
|
||||
- name: 'disk.ephemeral.size'
|
||||
event_type: 'compute.instance.*'
|
||||
|
@ -150,6 +163,8 @@ metric:
|
|||
project_id: $.payload.tenant_id
|
||||
resource_id: $.payload.instance_id
|
||||
user_metadata: $.payload.metadata
|
||||
metadata:
|
||||
<<: *instance_meta
|
||||
|
||||
- name: 'bandwidth'
|
||||
event_type: 'l3.meter'
|
||||
|
|
Loading…
Reference in New Issue