我使用的是Ceilometer Newton版本。我不想收集任何计量样本(我只能关闭计算轮询代理)并且只想收集一些事件样本。
我配置了像下面这样的pipeline.yaml:
---
sources:
- name: meter_source
interval: 36000
meters: "!*"
sinks:
- meter_sink
sinks:
- name: meter_sink
transformers:
publishers:
- notifier://
我配置了event.yaml,如下所示:
---
sources:
- name: event_source
events:
- "compute.instance.create.end"
- "compute.instance.delete.end"
- "compute.instance.resize.confirm.end"
sinks:
- event_sink
sinks:
- name: event_sink
transformers:
publishers:
- notifier://
我认为在这个配置中,ceilometer只会收集在event.yaml中定义的事件。但事情并不像我的预期。实际上,云高仪收集的事件多于我在event.yaml中定义的事件。
我意识到pipe.yaml应该稍后在计算节点配置,然后我只关闭计算节点处的云高仪代理以避免收集计量样本。
然而,云高仪仍然收集了更多事件,然后我在event_pipeline.yaml中定义。之后我发现meter.yaml包含事件定义。我将它们全部删除,然后ceilometer只收集event_pipeline.yaml中定义的事件。
然后我提出问题:
我们为什么要让这么多文件event_pipeline.yaml,meter.yaml和event_definitions.yaml来确定一件事(比如收集哪些事件)?
- 醇>
为什么meter.yaml和event_definitions.yaml都包含事件 定义