Indexing

FAQs and Troubleshooting

9min

I can’t see synced data in the log files.

By default, all logs are set to “Standard” Monolog\Logger::INFO. To see indexing data in the logs set the Indexing logger to “Verbose” Monolog\Logger::DEBUG. That setting can be found here Stores > Configuration > Klevu > Developer Settings > Logging.



I have integrated my store, but no entity data has been indexed to Klevu.

Attribute discovery and attribute sync are triggered on integration as is entity discovery. Entity sync however is handled via cron. Please ensure you have corn running correctly. The indexing cron default schedule is set to every 30 minutes. This can be customised in the admin Stores > Configuration > Klevu > Data Sync > Indexing

As with all cron tasks added by version 4.x of the Klevu integration, order sync cron tasks use the dedicated klevu cron group, allowing granular configuration of scheduling and run options.

We recommend using the native Magento cron to run these jobs, configuring schedules if necessary, rather than a custom server-side cron implementation of the CLI command.



I have set an attribute to be registered with Klevu but data is not being sent for that attribute when indexing entity data?

Setting an attribute to be indexable Klevu only registers that attribute with Klevu. The indexing modules use the Klevu pipelines to send data. These pipelines are configured via YAML files. To add attribute data to these pipelines to must add a pipeline customisation YAML file.



How do I exclude certain products/categories/CMS pages from the index?

By default, Klevu will index all products/categories/CMS pages. There are admin settings to exclude disabled or out-of-stock products. If you wish to exclude products from the sync based on any other attribute you can add an is indexable determiner via etc/di.xml.



How do I sync all products/categories/CMS pages?

The Klevu modules always send a delta sync, i.e. just the products that need to be updated. Which products to send to Klevu is determined by the next_action column in the klevu_indexing_entities. We have a CLI command to set entities to require an update (or addition/deletion if applicable). In that command instead of passing a list of IDs to update we can pass --entity-ids="all"



How do I exclude products from indexing by visibility?

By default, we do not filter products by visibility when indexing data. We have an optional module that can be installed to add the ability to filter products on visibility before indexing.

We have 2 future releases planned:

  • integrate your auth keys at website scope (same auth keys for multiple stores).
  • indexing visibility for customer groups.

This module would cause issues with either setup as products could have differing visibility between stores and customer groups, potentially triggering a Delete request when the product should be sent to Klevu.

The frontend modules filter search requests based on visibility which matches the default Magento behaviour

  • category-search or search for search requests.
  • category-search or category for category navigation requests.


Why are configurable and variant products indexed as out-of-stock when they are in stock?

In Magento 2.4.4 - 2.4.6-p7, there is a bug in Magento MSI where a configurable product became out of stock it would not come back into stock, even if the admin displayed Stock Status: In Stock. This issue was fixed in the 2.4.7 release and can be applied via quality patch ID: ACSD-56546. If that does not fix the issue, please review the 2.4.7 release as there were multiple inventory issues fixed in that release.