When configuring a new instance of Sitecore XP or maintaining an existing one, you may encounter a situation where your interactions report shows far fewer interactions than expected.
One possible cause is interaction processing which hasn’t kept up with the interactions being logged on your website. In some cases this can be so slow that it appears collection, processing, and reporting aren’t working at all. Here are a few things you can look at to help you diagnose your issue.
Are interactions being recorded?
SELECT TOP 10 * FROM xdb_collection.Interactions ORDER BY StartDateTime ASC
Run this command in each of your shard databases to see the recent interactions which have been recorded. Compare the interactions being logged with the expected number and frequency of interactions in the environment you’re looking at.
For more information, see https://doc.sitecore.net/developers/architecture-and-roles/roles/xp/storage-roles/xdb-collection-database.html
How many interactions are waiting to be processed?
SELECT COUNT(*) FROM xdb_processing_pools.InteractionLiveProcessingPool
This command will indicate the number of interactions waiting to be processed. Monitoring the number of records in this table can give you an indication of the number of new records being created and the number of new interactions which are being queued for processing.
If the number of records is steadily building up, either processing isn’t working or it’s working too slowly to handle the workload.
If you’re collecting interactions but not seeing the size of the live interaction processing pool change at all, there might be an issue with aggregation.
For more information, see https://doc.sitecore.net/developers/architecture-and-roles/roles/xp/storage-roles/xdb-processing-pools-database.html
If Analytics reports don’t look quite right, there are some things you can try:
Disable device detection
We encountered an issue with slow processing on a recent project. After logging an issue with Sitecore support, they advised:
Device detection has been known to cause the slowness in rebuilding reporting DB.
Try disabling device detection to determine if this has been impacting the speed of processing.
Check the CPU usage on your processing role
If you’re consistently seeing a high level of activity, you may need to scale your processing instances up or out.
Check connection strings
Use the Server Role Configuration Reference to ensure you have the correct settings on each of your servers
Check Application Insights errors
Check in Application Insights for any repeated error messages that might indicate misconfiguration.
- https://doc.sitecore.net/developers/data-flows-and-processes/xp/processing.html and all the data flows and processes documentation
- https://doc.sitecore.net/developers/server-role-configuration-reference/index.html – the Server Role Configuration Reference mentioned above