Tuesday, March 7, 2017

AEM Site Performance Tuning - Query monitoring

If you are facing any performance issues with pages developed in AEM, then its time to look on the JCR queries running in your application.

Some of the query monitoring mechanism are given below

1) Identify any potential errors or warnings in error.log.
If you see any warnings as below, then you are required to add proper oak index.
 org.apache.jackrabbit.oak.spi.query.Cursors$TraversingCursor Traversed 12000 nodes with filter Filter... consider creating an index or changing the query

Ref: https://docs.adobe.com/docs/en/aem/6-1/deploy/platform/queries-and-indexing.html

2) Debug query details
Add new logger org.apache.jackrabbit.oak.query and configure the log level to Debug/Trace.




You will more details on query, index and cost.

Ref: http://jackrabbit.apache.org/oak/docs/query/query-engine.html

3) Query Monitoring tools

AEM provides Query Performance tool for analyzing the slow queries.
http://localhost:4502/libs/granite/operations/content/diagnosis/tool.html/_granite_queryperformance

In explain query tab, you can test the query and analyze the time, applied index etc.

In addition, there is ACS Commons which provides additional Explain Query feature for analyzing more details like index cost.
http://localhost:4502/etc/acs-tools/explain-query.html



No comments:

Post a Comment