I am writing a performance data exporter, according to the specification laid out at this link: http://www.opennms.org/wiki/Performance_Data_Exporter_Specification, so that I can create my own graphs of data across a group of nodes, instead of for individual nodes. I want to be able to do analytics - a statistical view over a collection of devices, for example of CPU utilization, memory, disk or network IO, aggregates, etc.
In the link mentioned above, Step 4 of the Acceptance Criteria states that my process should:
“parse[s] the path field of the incoming performance data messages and then use[s] the attributes in this key field to query the OpenNMS web services for additional information about the target of this performance metric (for instance, hostname, IP address, etc.).”
I have successfully implemented Steps 1-3, and can parse the incoming performance data messages for their fields, but I am stuck at the part that refers to querying the OpenNMS web services for additional information. I’ve checked the REST API documentation ( http://www.opennms.org/wiki/ReST ), and while I’ve figured out how to use the data that I getting from the performance data messages to GET node data using the API, I am unsure as to how to use that data to get the “additional information” described in Step 4 of the acceptance criteria.
For example, data from a selection of performance data messages looks like the following (I’ve formatted the data in tabular format, and added the column headers. Each row is a separate message):
How do I take this data (particularly the path) and query the REST API for additional information? What does that additional information look like? The examples given in the REST API documentation don’t seem to fit quite right, and while the Measurements API (http://www.opennms.org/wiki/ReST#Measurements_API) seems the most promising, I’m unable to use it because my team is currently using version 12 of OpenNMS, and doesn’t plan to upgrade anytime soon. Is there any way for me to retrieve the data that I need without using the Measurements API? I’d appreciate any assistance. Thanks.
Specialized Infrastructure - Engineering
sean.mcdonald <at> barclays.com
Barclays, 745 7th Ave 16th Floor, New York 10019
This message is for information purposes only, it is not a recommendation,
advice, offer or solicitation to buy or sell a product or service nor an
official confirmation of any transaction. It is directed at persons who are
professionals and is not intended for retail customer use. Intended for
recipient only. This message is subject to the terms at: www.barclays.com/emaildisclaimer.