[ 
https://issues.apache.org/jira/browse/YARN-3390?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14493659#comment-14493659
 ] 

Zhijie Shen commented on YARN-3390:
-----------------------------------

Thanks for sharing your idea, Naga! Thinking about RM side use case again, an 
RMTimelineCollectorManager is better than an RMTimelineCollector with a map of 
appId -> collector context info. RMTimelineCollectorManager is similar to what 
we have to NM, i.e., TimelineCollectorManager. However, it doesn't need IPC 
interface and web server, but maintain the collection of app-level collector an 
RM side. The benefit is that we can reuse most of the code of app-level 
collector as well as collector manager, uniforming the way we write the 
timeline entities.

The approach is to make TimelineCollectorManager abstract and contain the 
common logic of managing collector lifecycles, and have 
NMTimelineCollectorManager extend TimelineCollectorManager by adding the IRP 
interface and start the web server, and have RMTimelineCollectorManager extend 
TimelineCollectorManager by sourcing RMContext for the context info and 
coupling with RMApp to add/remove the app-level collector. I created patch for 
this approach.

> RMTimelineCollector should have the context info of each app
> ------------------------------------------------------------
>
>                 Key: YARN-3390
>                 URL: https://issues.apache.org/jira/browse/YARN-3390
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: timelineserver
>            Reporter: Zhijie Shen
>            Assignee: Zhijie Shen
>         Attachments: YARN-3390.1.patch
>
>
> RMTimelineCollector should have the context info of each app whose entity  
> has been put



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to