Closed vincent-zurczak closed 7 years ago
Solution 4...
Table with 4 columns:
The CSS and JS stuff will be reused from the web administration.
Create a dedicated bundle. Inject the HTTP service. Also inject the manager.
Make the bundle register a new preference. This preference will be queried by the web administration. It will add a link in the main menu.
Put this bundle in the miscellaneous directory.
Kibana allows to create dashboards almost easily. Integration with Karaf (and thus Roboconf) is made simple by Decanter, the Elasticsearch appender and the JMX collector. However, in our case, we do not want to have one dashboard but a collection of dashboards.
I successfully created one for the DM. But I would like to use the same cluster for all the agents too. So, we need...
Besides, Kibana (5.x) does not allow to create parameterized dashboards. What we can use though is a custom query. We can use our JMX collector and specify a source field (e.g.
source=DM
, orsource=app1,instance_path
). So, we can filter by this field.In Kibana 5.x, any action is propagated to the URL. Including the query filter. Example...
We can simply replace source%3DDM in this sample URL. What we need are links that lead to the right dashboards.
Solution 1: add a preference on the DM's side to indicate whether Kibana is used. This preference would be used by the web administration to add links or a specific page in the web administration.
Solution 2: make a HTML page generated from the DM's templating.
Solution 3: hard-code the page (fine for demos, nothing more).
Solution 1 ties us with Kibana. And Kibana 5.x (as other versions used to work differently). Solution 3 is poor. Solution 2 is not integrated with our web console. Maybe we need to think about making our web administration extensible... We would then deploy a specific bundle for Kibana 5.x and it would update the web administration seamlessly. :+1: