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

Chetan Mehrotra commented on OAK-2755:
--------------------------------------

To get above details so far I use the Groovy script at [1] to get all details 
(it relies on reflection and implementation details). The output provided is 
like below

{noformat}
Number of observers : 14

 Queue Size                                        Name                         
                Ext   Local    #Local       #Ext     Session ID            
Subtree                 
 __________  
________________________________________________________________________________
  _____  _____  __________  __________  __________  
__________________________________
 0           
org.apache.sling.installer.provider.jcr.impl.JcrInstaller$StoppableThread$1     
  true   true   0           0           session-11  []                          
       
 0           
com.adobe.granite.workflow.core.eventsupport.JcrToWorkflowEventService          
  true   false  0           0           session-56  [/etc/workflow]             
      
 0           com.adobe.granite.ui.clientlibs.impl.HtmlLibraryManagerImpl        
               true   true   0           0           session-52  [/etc, /libs, 
/apps]              
 0           com.adobe.granite.workflow.core.model.WorkflowModelCacheImpl       
               true   true   0           0           session-10  
[/etc/workflow/models]            
 0           com.adobe.granite.workflow.core.launcher.WorkflowLauncherListener  
               false  true   0           0           session-53  
[/etc/workflow/launcher/config]   
 0           org.apache.sling.installer.provider.jcr.impl.RootFolderListener    
               true   true   0           0           session-11  [/apps]        
                   
 0           
com.adobe.granite.workflow.core.launcher.WorkflowLauncherListener$WorkflowLaunch
  true   true   0           0           session-54  
[/etc/workflow/launcher/config]   
 0           com.day.cq.replication.impl.ConfigManagerImpl                      
               true   true   0           0           session-50  
[/etc/replication]                
 0           org.apache.sling.installer.provider.jcr.impl.RootFolderListener    
               true   true   0           0           session-11  [/libs]        
                   
 0           com.adobe.granite.workflow.core.payloadmap.PayloadMoveListener     
               false  true   0           0           session-12  [/content/dam] 
                   
 0           
org.apache.sling.installer.provider.jcr.impl.JcrInstaller$StoppableThread       
  true   true   0           0           session-11  []                          
      
 0           
com.adobe.granite.workflow.core.collection.ResourceCollectionManagerListener    
  true   true   0           0           session-55  [/etc/workflow/packages]    
      
{noformat}

[1] https://gist.github.com/chetanmeh/1ef9ac3b79cc15542843

> Consolidated JMX view of all EventListener related statistics
> -------------------------------------------------------------
>
>                 Key: OAK-2755
>                 URL: https://issues.apache.org/jira/browse/OAK-2755
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: core
>            Reporter: Chetan Mehrotra
>            Assignee: Chetan Mehrotra
>              Labels: monitoring, observation
>             Fix For: 1.0.13, 1.3.0
>
>
> Oak Observation support exposes a {{EventListenerMBean}} [1] which provide 
> quite a bit of details around registered observation listeners. However in a 
> typical application there would be multiple listeners registered. To simplify 
> monitoring it would be helpful to have a _consolidated_ view of all listeners 
> related statistics.
> Further the stats can also include some more details which are Oak specific
> * Subtree paths to which the listener listens to - By default JCR Api allows 
> single path however Oak allows a listener to register to multiple paths
> * If listener is enabled to listen to cluster local and cluster external 
> changes
> * Size of queue in BackgroundObserver
> * Distribution of change types present in the queue - Local, External etc
> [1] 
> https://github.com/apache/jackrabbit/blob/trunk/jackrabbit-api/src/main/java/org/apache/jackrabbit/api/jmx/EventListenerMBean.java



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

Reply via email to