/vrops-metric-collection

Collect any resource metric from vRealize Operations Manager using REST API and python client

Primary LanguagePythonMIT LicenseMIT

vrops-metric-collection

Collect any resource metric from vRealize Operations Manager using REST API and python client

Purpose:

This is a small program to collect metric data of a "resource/set of resources" from vRealize Operations Manager using python client and REST API. This can collect a single value of the metric or a series of historical values.

What is included:

There are two program files, set-config.py and metric-collection.py. The above two programs generate two data files config.json and metric-data.json. Sample is provided for config.json and metric-data.json

Pre-Requisites:

These programs were written in Python2.7 version.So your system should have Python 2.7. Also download and install nagini module from vRealize Operations Manager. It can be found at "https:///suite-api" . Visit the page, download and install the Python Client.

How to run:

Download both "set-config.py" and "metric-collection.py" to the same location. Program has two parts.

Part 1: Setting up the environment:

First time run set-config.py with #python set-config.py, this will ask for the following inputs:

Adapter Kind:

Resource Kind:

vROPs server IP/FQDN:

user id:

vROps password:

Maximum number of samples to collect:

Number of Keys to Monitor: Keys (one by one):

Once all the above information is provided, the script generates config.json in the same location. The provided password is saved in encrypted format.

Part 2: Getting the actual data:

Run the "metric-collection.py" file with # python metric-collection.py This will get values from config.json file and generate metric-data.json file in the same location. This metric-data.json will have the desired output values.

You should schedule a cron job or scheduler to run this script every 6 minutes (considering vROps collects data every 5 minutes). This way every 6 minutes you will get fresh data and parse the data as per your requirement.

Check the format of the metric-data.json file to further utilize the data.

Points to Note:

By default, I am not collecting historical data (MaxSample is default 1), so I get the last data. This should be run as a cron job to get continuous data. To get the historical data add the MaxSample value as any non-zero integer value