I would implement a mbean, HelixDashboardMBean, that is a Helix spectator. The mbean would expose all the necessary calls as REST using the Jolokai library.
The entire dashboard will be packaged as a war so people have option to run it along side other plugins. In addition we can have a standalone executable that embeds jetty,hawtio, and Helix dashboard that runabout of the box. Sent from my iPad On Mar 27, 2013, at 1:33 PM, kishore g <[email protected]> wrote: > Thanks Loannis for the detailed explanation. Ming, can you comment on which > approach you planned to take. > > Helix supports both jmx as well as REST api's to fetch cluster data. > > JMX metrics are exposed by the controller. but only the current active > controller will have these metrics up to date. So there should be one step > to first get the current active controller and then access the right > controller. We might need to add more mbeans as needed. > > REST api is supported by helix-webapp-admin. So we can use the REST api to > access the data. > > Ming, what are you planning to use to retrieve the data. I think REST end > point might be a good option. > > Another question: Since hawt plugins are more of a client side > implementation, then we will need some library to parse the data on the > client side and also understand what the data means. This brings back the > question if its actually better to use play framework that way we can work > with Helix model objects directly without having to parse the data? > > Thoughts ? > > thanks, > Kishore G > > > > On Wed, Mar 27, 2013 at 4:48 AM, Ming Fang <[email protected]> wrote: > >> Kishore >> >> I planned on sharing the dashboard. >> >> --ming >> >> On Mar 25, 2013, at 5:14 PM, kishore g <[email protected]> wrote: >> >>> Hi Ming/Loannis, >>> >>> We have some kind of dashboard ( though not great) working with play >>> framework and were thinking of generalizing it. Hawt.io seems to be >> popular >>> as well. I tried reading the website and found that we would have to >> write >>> a hawt.io plugin which gets data from jmx, rest end point etc. >>> >>> How ever i have few questions >>> 1. Plugin seems to run on the client (javascript), can we write some java >>> code on server side to access data from zookeeper ? >>> 2. Is JMX the only way to expose data? >>> >>> >>> None of us know much about the UI technologies and play framework is kind >>> of appropriate for us since most of us code in java. Can you please share >>> your experience on hawt and what benefits would we get if we use >>> hawt.ioinstead of play framework. >>> >>> Also Ming, the dashboard that you planning to build, will be mainly for >>> your application or something that can be used by others ? >>> >>> In the end we want to provide a basic dashboard that shows the cluster >> data >>> and allow simple admin operations. At the same time, it must be easy for >>> users to customize/add additional features without having to rewrite it >>> again. I think the latter feature is something that might make us use >> hawt >>> over play framework. What do you think? >>> >>> thanks, >>> Kishore G >>> >>> On Fri, Mar 22, 2013 at 10:40 AM, Ioannis Canellos <[email protected] >>> wrote: >>> >>>> +1 for hawtio. It uses angularjs, its pluggable and its hawt! >>>> >>>> >>>> -- >>>> *Ioannis Canellos* >>>> * >>>> >>>> ** >>>> Blog: http://iocanel.blogspot.com >>>> ** >>>> Twitter: iocanel >>>> * >>>> >> >>
