#integration-dashboard
Visualisation of activity across multiple integration nodes. For use with IBM Integration Bus.
This is still early days in the development of this project. Most of the effort until this point has been to develop a framework that provides a javascript interface to operational data from IBM Integration Bus and to facilitate with the development and re-use of widgets that visualise those data. In future, it would be good to put energy into developing more widgets and maybe even a usable dashboard application that embeds these widgets.
The widgets are exposed as angular directives. Including one of these widgets in your application can be as straight forward as...
...doing this in your <html><head>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.min.js"></script>
<script src="/directives/iib-widgets.js"></script>
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="/js/integrationBus.js"></script>
<link rel="stylesheet" type="text/css" href="/css/style.css">
...doing this in your Javascript
... angular.module("MyApp",['iibWidgets']);..
... and doing this in your <html><body>
<div iib-flow-stats iib-flow-name='MyFlow'></div>
If you feel like applying your own styling, then you may mess around with the stylesheet but this is optional.
The project also includes a demo dashboard application that makes use of these directives in a more flexible way.
- Download and install node.js - http://nodejs.org/download/
- Download - [integration-dashboard] (https://github.com/hosie/integration-dashboard/archive/v0.1.zip) and unzip
- open a console, add node.js to your PATH,
- cd to the directory where you unzipped in (2). cd to src ( the directory that contains app.js and package.json - among other things)
cd integration-dashboard/src
- install the server side prereqs
npm install
- install the front end prereqs
bower install
- While in the
integration-dashboard/src
directory, start the node.js applicationnode app.js
- Open a browser and go to [http://localhost:3002/Test/index.html] (http://localhost:3002/Test/index.html)
- Click on the links in the navbar to view the different widgets
- edit hosts.JSON. For each Integration Node, provide host, port ( web admin port) and mqtt ( port for MQTT websockets).
- Start the node.js application
node app.js
- Point your browser at [http://localhost:3002/index.html] (http://localhost:3002/index.html)
Point your browser at http://localhost:3002 to use the dashboard app with the Integration Nodes that you confiugred in the hosts.JSON file in the previous step ####or... Point your browser at http://localhost:3002/?simulation=true to use the dashboard app with simulated data.
Make sure that flow stats and resource manager stats are turned on. There are a few bugs. If you fix any, I'd love to hear about it.
- make sure mocha is installed
npm install -g mocha
- start the server in test mode
node app.js --test
- point your browser(s) at http://localhost:3002/Test/index.html
- cd to project root
- run
mocha
- start the server without the --test flag
- point browser at http://localhost:3002/Test/index.html