<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;" dir="ltr">
<p>Hello Gordon,</p>
<p><br>
</p>
<p>In order to avoid previous erroneous configurations I started over the ceilometer implementation. I tried including modifying the pipeline file as proposed and now I am finding errors like this when I Try to make change similar to the one you proposed.</p>
<p><br>
</p>
<p>2017-10-31 23:45:35.707 14436 ERROR cotyledon [-] Unhandled exception<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon Traceback (most recent call last):<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/cotyledon/__init__.py", line 62, in _exit_on_exception<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon yield<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/cotyledon/__init__.py", line 140, in _run<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon self.run()<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/ceilometer/agent/manager.py", line 417, in run<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon self.polling_manager = pipeline.setup_polling()<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/ceilometer/pipeline.py", line 855, in setup_polling<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon return PollingManager(cfg_file)<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/ceilometer/pipeline.py", line 817, in __init__<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon cfg = self.load_config(cfg_info)<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/ceilometer/pipeline.py", line 639, in load_config<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon conf = yaml.safe_load(data)<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/yaml/__init__.py", line 93, in safe_load<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon return load(stream, SafeLoader)<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/yaml/__init__.py", line 71, in load<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon return loader.get_single_data()<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/yaml/constructor.py", line 37, in get_single_data<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon node = self.get_single_node()<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/yaml/composer.py", line 36, in get_single_node<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon document = self.compose_document()<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/yaml/composer.py", line 55, in compose_document<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon node = self.compose_node(None, None)<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/yaml/composer.py", line 84, in compose_node<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon node = self.compose_mapping_node(anchor)<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/yaml/composer.py", line 127, in compose_mapping_node<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon while not self.check_event(MappingEndEvent):<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/yaml/parser.py", line 98, in check_event<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon self.current_event = self.state()<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon File "/usr/lib/python2.7/dist-packages/yaml/parser.py", line 439, in parse_block_mapping_key<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon "expected <block end>, but found %r" % token.id, token.start_mark)<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon ParserError: while parsing a block mapping<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon in "<string>", line 2, column 1:<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon sources:<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon ^<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon expected <block end>, but found '<block sequence start>'<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon in "<string>", line 15, column 5:<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon - name: meter_source<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon ^<br>
2017-10-31 23:45:35.707 14436 ERROR cotyledon <br>
</p>
<p><br>
</p>
<p>Follows the pipeline file, with those comments it works out as expected. I'm trying to add the ODL and SNMP configuration but when I add them it starts throwing out those errors.</p>
<p><br>
</p>
<p></p>
<div>---<br>
sources:<br>
# - name: meter_snmp<br>
# interval: 60<br>
# resources:<br>
# - snmp://OS_community@192.168.0.1<br>
# - snmp://OS_community@192.168.0.2<br>
# meters:<br>
# - "hardware.cpu*"<br>
# - "hardware.memory*"<br>
# - "hardware.disk*"<br>
# - "hardware.network*"<br>
# sinks:<br>
# - meter_sink<br>
- name: meter_source<br>
interval: 60<br>
meters:<br>
- "*"<br>
sinks:<br>
- meter_sink<br>
- name: cpu_source<br>
interval: 60<br>
meters:<br>
- "cpu"<br>
sinks:<br>
- cpu_sink<br>
- cpu_delta_sink<br>
- name: disk_source<br>
interval: 60<br>
meters:<br>
- "disk.read.bytes"<br>
- "disk.read.requests"<br>
- "disk.write.bytes"<br>
- "disk.write.requests"<br>
- "disk.device.read.bytes"<br>
- "disk.device.read.requests"<br>
- "disk.device.write.bytes"<br>
- "disk.device.write.requests"<br>
sinks:<br>
- disk_sink<br>
- name: network_source<br>
interval: 60<br>
meters:<br>
- "network.incoming.bytes"<br>
- "network.incoming.packets"<br>
- "network.outgoing.bytes"<br>
- "network.outgoing.packets"<br>
sinks:<br>
- network_sink<br>
# - name: meter_source<br>
# interval: 60<br>
# meters:<br>
# - switch.flow.duration_seconds<br>
# sinks:<br>
# - meter_sink<br>
# resources:<br>
# - opendaylight://127.0.0.1:8080/controller/nb/v2?container_name=default&container_name=egg&auth=basic&user=admin&password=admin&scheme=http<br>
sinks:<br>
- name: meter_sink<br>
transformers:<br>
publishers:<br>
- notifier://<br>
- name: cpu_sink<br>
transformers:<br>
- name: "rate_of_change"<br>
parameters:<br>
target:<br>
name: "cpu_util"<br>
unit: "%"<br>
type: "gauge"<br>
scale: "100.0 / (10**9 * (resource_metadata.cpu_number or 1))"<br>
publishers:<br>
- notifier://<br>
- name: cpu_delta_sink<br>
transformers:<br>
- name: "delta"<br>
parameters:<br>
target:<br>
name: "cpu.delta"<br>
growth_only: True<br>
publishers:<br>
- notifier://<br>
- name: disk_sink<br>
transformers:<br>
- name: "rate_of_change"<br>
parameters:<br>
source:<br>
map_from:<br>
name: "(disk\\.device|disk)\\.(read|write)\\.(bytes|requests)"<br>
unit: "(B|request)"<br>
target:<br>
map_to:<br>
name: "\\1.\\2.\\3.rate"<br>
unit: "\\1/s"<br>
type: "gauge"<br>
publishers:<br>
- notifier://<br>
- name: network_sink<br>
transformers:<br>
- name: "rate_of_change"<br>
parameters:<br>
source:<br>
map_from:<br>
name: "network\\.(incoming|outgoing)\\.(bytes|packets)"<br>
unit: "(B|packet)"<br>
target:<br>
map_to:<br>
name: "network.\\1.\\2.rate"<br>
unit: "\\1/s"<br>
type: "gauge"<br>
publishers:<br>
- notifier://<br>
</div>
<p></p>
<p><br>
</p>
<hr class="ms-border-color-neutralLight" style="border-right:0;border-bottom:0;border-left:0;border-top-style:solid;margin-top:15px;margin-bottom:15px;margin-left:10px;">
<div class="ms-border-color-neutralTertiaryAlt" style="border-left-width:2px;border-left-style:solid;padding-left:10px;">
<div>
<div><font size="2"><span style="font-size:10pt;">On 26/10/17 08:33 AM, andres sanchez ramos wrote:<br>
> <br>
> import pbr.version<br>
> version_info = pbr.version.VersionInfo('ceilometer')<br>
> <br>
> and the output was 7.0.3<br>
<br>
<br>
what happens if you use:<br>
<br>
- name: meter_source<br>
interval: 60<br>
meters:<br>
- switch.flow.duration_seconds<br>
- <any network specific meter><br>
sinks:<br>
- meter_sink<br>
resources:<br>
- <br>
opendaylight://127.0.0.1:8080/controller/nb/v2?container_name=default&container_name=egg&auth=basic&user=admin&password=admin&scheme=http<br>
<br>
-- <br>
gord</span></font></div>
</div>
</div>
<br>
<p><br>
</p>
<div id="Signature">
<p>Enviado desde <a id="LPNoLP" href="http://aka.ms/weboutlook">Outlook</a><br>
</p>
</div>
</div>
</body>
</html>