|
| 1 | +# IBM IB metrics exporter |
| 2 | + |
| 3 | +[](https://travis-ci.com/AATools/ib-metrics-pyclient) [](https://coveralls.io/github/AATools/ib-metrics-pyclient?branch=master) |
| 4 | + |
| 5 | +This is python client for collecting IBM Integration Bus metrics and exporting to [Prometheus pushgateway](https://github.com/prometheus/pushgateway). |
| 6 | +The collected metrics can be explored in Prometheus or Grafana. |
| 7 | + |
| 8 | +The metrics are collected using [mqsilist](https://www.ibm.com/support/knowledgecenter/en/SSMKHH_9.0.0/com.ibm.etools.mft.doc/an07250_.htm) command. So, you need to install `IBM Integration Bus`. |
| 9 | + |
| 10 | +Tested for IBM IB v9 and Python 2.6 and 2.7 on Linux. |
| 11 | + |
| 12 | +## Collected metrics |
| 13 | + |
| 14 | +By default, metrics are collected every 15 seconds. |
| 15 | + |
| 16 | +The metrics provided by the client: |
| 17 | +* `ib_broker_status...` - current status of IB brokers; |
| 18 | +* `ib_exec_group_status...` - current status of IB execution groups; |
| 19 | +* `ib_application_status...` - current status of IB applications; |
| 20 | +* `ib_message_flow_status...` - current status of IB message flows. |
| 21 | + |
| 22 | +You can run `IB metrics pyclient` and [MQ metrics pyclient](https://github.com/AATools/mq-metrics-pyclient) together. Metrics from both clients will be sent to the same pushgateway. Conflicts will not arise. |
| 23 | + |
| 24 | +## Getting Started |
| 25 | + |
| 26 | +Python 2.6 or 2.7 should be already installed. |
| 27 | + |
| 28 | +Download Prometheus Pushgateway from the [release page](https://github.com/prometheus/pushgateway/releases) and unpack the tarball. |
| 29 | + |
| 30 | +### Run Prometheus Pushgateway |
| 31 | + |
| 32 | +```bash |
| 33 | +cd pushgateway |
| 34 | +nohup ./pushgateway > pushgateway.log & |
| 35 | +``` |
| 36 | + |
| 37 | +For Pushgateway the default port is used (":9091"). |
| 38 | + |
| 39 | +### Run ib-metrics-pyclient |
| 40 | + |
| 41 | +```bash |
| 42 | +git clone https://github.com/AATools/ib-metrics-pyclient |
| 43 | +cd ib-metrics-pyclient |
| 44 | +chmod u+x ./iib_metrics_client.py |
| 45 | +nohup ./iib_metrics_client.py & |
| 46 | +``` |
| 47 | + |
| 48 | +After that, you should set up your Prometheus server to collect metrics from Pushgateway (`http://<hostname>:9091/metrics`). |
| 49 | + |
| 50 | +## Grafana dashboard |
| 51 | + |
| 52 | +The Grafana dashboard visualizes collected metrics. |
| 53 | + |
| 54 | +## Simple process scheme |
| 55 | + |
| 56 | + |
0 commit comments