I too think that a comprehensive UI works better standalone but given that stram already runs a webapp server, provides web services and RM provides a proxy with mapped url space for it, we can extend stram to provide better visual output. Overall I am +1 on the idea.
On Mon, Jun 11, 2018 at 8:59 AM Vlad Rozov <vro...@apache.org> wrote: > Clarification: I am -0 on making UI part of the stram. I am +1 on > providing reference webUI application outside of the stram. > > Thank you, > > Vlad > > On 6/9/18 07:05, Vlad Rozov wrote: > > -0: stram provides REST API to query runtime information and IMO this > > is sufficient to build an external webUI application(s). > > > > Thank you, > > > > Vlad > > > > On 6/6/18 11:17, Ambarish Pande wrote: > >> +1 For this feature. It would be really helpfull for users to > >> visualize all > >> this information and the DAG. > >> > >> +1 for ReactJS + MaterialUI > >> A great choice, given its flexibility and performance. > >> > >> I would like to contribute to this effort. > >> > >> On Wed, 6 Jun 2018 at 8:13 PM, Chinmay Kolhatkar <chin...@apache.org> > >> wrote: > >> > >>> Hi Community, > >>> > >>> I want to propose a feature in apex-core to have a UI component in > >>> stram. > >>> This is influenced by how basic runtime information is shown on UI by > >>> spark. > >>> > >>> This includes following features: > >>> 1. Webpage will be hosted by stram and will be available for user to > >>> view > >>> in one of the two ways (I'll prefer approach b): > >>> a. Hosted on a static port in which case we'll need to add a new > >>> servlet > >>> to stram > >>> b. The webpage will be hosted on the same port as that of stram > >>> webservice but at a different path. Say, http:// > >>> <stram_host>:<webservice_port>/ui > >>> > >>> 2. The webpage will be a static page and depending on the framework we > >>> chose, it can show the realtime metric data from stram. > >>> > >>> 3. There will be a categories of readonly information (maybe > >>> dynamically > >>> changing) that will be shown on the UI: > >>> a. Application level information > >>> i. Status > >>> ii. Number of tuples processed/emitted > >>> iii. Start time/ Running span > >>> iv. Stram events > >>> v. Total memory used/available > >>> vi. Number of container allocated/deployed > >>> v. Other information which is available in stram > >>> b. Logical Operator level information > >>> i. Status > >>> ii. Number of tuples processed/emitted > >>> iii. Important events related to logical operator > >>> iv. Container list in which the operator is deployed > >>> v. Any other information available in stram > >>> vi. Logical DAG View > >>> c. Container level information > >>> i. Status > >>> ii. Number of tuples processed/emitted > >>> iii. Important events related to logical operator > >>> iv. Any other information available in stram > >>> v. Physical DAG View > >>> > >>> 4. In second phase, there will be control related operations allowed > >>> from > >>> the UI, as follows: > >>> a. Stop/Kill application > >>> b. Stop/Kill containers > >>> c. Stack trace dump of containers > >>> d. Logs related? > >>> d. etc...?? > >>> > >>> The above implementation can be done in phases as follows: > >>> 1. Have webpage display application level information only (read-only). > >>> Static display first (i.e. page needs to refresh to see latest > >>> data), next > >>> dynamically changing data. > >>> 2. Have jenkins build tools updated as needed by UI framework. > >>> 3. Update the backend (stram) to serve the UI pages > >>> 3. Extend the webage to display logical operator information. > >>> 4. Extend the webage to display physical operator information > >>> 5. Implement control operations on UI. > >>> > >>> > >>> To implement above functionality, I propose ReactJS as UI framework and > >>> MaterialUI (based on Google's material design) for theme/controls/CSS > >>> support. > >>> > >>> Please let me know what you think about the same. > >>> > >>> Also, please let know if anyone is interested in contributing to this > >>> feature. > >>> > >>> Thanks, > >>> Chinmay. > >>> > > > >