How to track SOLR indexation process in Alfresco

For tracking indexation in SOLR, we have the Alfresco Administration Console, which gives us the indexation status, the indices in disk, and an estimation of the remaining time of transactions to be indexed. This is available in Enterprise edition in Admin Console:
 
http://localhost:8080/alfresco/service/enterprise/admin/admin-searchservice
 
This information is directly taken from SOLR Summary XML Report (in this case the url is using 8080 instead of the default secured 8843):
 
http://localhost:8080/solr/admin/cores?action=SUMMARY&wt=xml
 
Another way for tracking or monitoring the indexation progress is to set debug logger in log4j.properties of SOLR application:
 
log4j.logger.org.alfresco.solr.tracker.CoreTracker=DEBUG
 
In SOLR, the log4j can not be extended out of WEB-INF (as in Alfresco Share) and you should change it directly under WEB-INF directory at:
 
/opt/alfresco424/tomcat/webapps/solr/WEB-INF/classes/log4j.properties
 
The best part of this is that you can activate it or reload it (without restarting the service) with this action:
 
http://localhost:8080/solr/admin/cores?action=LOG4J
 
By last, you can monitor size data.dir.root for SOLR via operating system, or via JMX (only in EE edition) with the next bean and their corresponding variables:
 
In jmxterm the sequence is the next one:
 
> jvms
> open <tomcat-id>
> domain Alfresco
> bean Alfresco:Category=Search,Type=Configuration,id1=managed,id2=solr
> get tracker.alfresco.active
> get tracker.alfresco.approx.indexing.time.remaining
> get tracker.alfresco.approx.txns.remaining
> get tracker.alfresco.disk
> get tracker.alfresco.lag
> get tracker.alfresco.lag.duration
> get tracker.alfresco.last.indexed.txn
> get tracker.alfresco.memory
Finally, you must take into consideration that there is an issue for getting this data if archive core is disabled by config in SOLR (in < Alfresco 4.2.5).
 
00

More Blog Entries

0 Comments