Hi all;

 

My company buy Solarwinds Monitoring Systems for monitoring our applications and critical systems a few months ago.I'm Middleware Adminastrator and we are using too much application in our systems.We did some research and unfortunately not find anything for monitoring Couchbase, RabbitMQ, Elasticsearch and GoogleAnalytics application level.So we decided to develop it ourselves.All systems using RestAPI service for get data.Only GoogleAnalytics service use own script file.Because it use different method for authentication.(Please click for more information about Google Analytics API)

 

This script basically request to application rest service and collect received responses and then server with own flask API services.Because this way, we're having a more secure and flexible structure.When Solarwinds systems request the flask API service, the API json response of the request is returned.You should parse flask API response on Solarwinds side.Example:

 

#!/usr/bin/env python

# -*- coding: utf-8 -*-

import requests

 

# Host stats

hurl = "flask_api_url"

host = "hostname_of_the_cluster_member"

# General options

user = "api_user"

passwd = "api_password*"

 

s = requests.get(hurl,auth=(user,passwd)).json()

 

for i in s["stats"]:

        for k,v in i.iteritems():

                if k == host:

                        for x,c in v.iteritems():

                                print "{0}:{1}".format(x,c)

 

Solarwinds systems can get ten value each definition.Therefore, the above definition must make for each server or cluster member.Because, each cluster member more than ten value will return.You can find scripts from GitHub.

 

Requirements;

  • python 2.7 (Least 2.6)
  • Python packages
    • requests
    • flask
    • flask-httpauth
    • MySQL-python (install with yum)
  • Mysql server
  • Nginx or Apache

 

 

Note: Scripts are still being developed.