Skip to content

RittmanMead/obi-metrics-agent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 

Repository files navigation

obi-metrics-agent.py

===================================================================
Developed by @rmoff / Rittman Mead (http://www.rittmanmead.com)
Absolutely no warranty, use at your own risk
Please include this notice in any copy or reuse of the script you make
===================================================================

Introduction

obi-metrics-agent is a tool that extracts OBIEE's performance metrics from the Dynamic Monitoring Service (DMS) functionality.

It works with OBIEE 11g and 12c. It runs natively under WLST (which ships with OBIEE) and has no mandatory external dependencies.

Overview

This application is written in Jython, to run under WLST. It will pull out all the OBIEE DMS metrics, and output them. Currently supported outputs are to file (CSV) or sent to Carbon/Graphite, or native InfluxDB.

It's written to run under a scheduler such as crontab, and so will launch, collect metrics, and exit again.

Setup

  1. Optionally, provision your data store (InfluxDB or Carbon). Or, just dump to CSV and do what you will with it from there.

    • I would recommend InfluxDB. It is very easy to get setup.

      1. Download and install

      2. Create a database to hold the metrics

         curl -G GET 'http://localhost:8086/query' --data-urlencode "q=CREATE DATABASE obi"
        
    • You can also use any system that accepts carbon protocol (eg Graphite)

  2. Run obi-metrics-agent.py to check everything works:

     $FMW_HOME/oracle_common/common/bin/wlst.sh ~/obi-metrics-agent.py weblogic Admin123 t3://localhost:7001
    
  3. Add to crontab :

     0-59 * * * * /app/oracle/biee/oracle_common/common/bin/wlst.sh ~/obi-metrics-agent.py weblogic Admin123 t3://localhost:7001 2>/dev/null
    
  4. If you're storing the data in InfluxDB or similar, get Grafana and build cool dashboards.

TODO

  • Better documentation ;)
  • Plus the stuff listed in the header of obi-metrics-agent.py itself
  • Do getopts better

BUGS

  • Raise any as an issue on the github repository.