Identification et résolution des incidents liés à la génération d'index en quasi-temps réel (NRT)
Quelques opérations , telles que la mise à jour d'une description de produit, déclenchent un index de génération delta en temps quasi réel (NRT) avec NiFi. utilise des messages d'invalidation pour avertir le serveur NiFi de l'événement. Ce document vous aidera à identifier et résoudre les problèmes liés aux aspects du processus NRT.
Procédures d'identification et de résolution des problèmes
- Confirmation de l'envoi de messages par le serveur de transactions
-
Lorsque l'opération est effectuée, le serveur de transactions écrit l'événement sur le canal WCNifiDistributedMapCache. Utilisez la commande SUBSCRIBE pour confirmer que l'événement est en cours d'écriture dans la file d'attente :
redis-cli subscribe "{cache-demoqaauth-services/cache/WCNifiDistributedMapCache}-invalidation"L'espace de nom varie d'un système à l'autre.
Si la commande SUBSCRIBE ne capture aucun événement, il peut y avoir un problème avec la connexion Redis à partir du serveur de transactions, ou l'événement spécifique peut ne pas être configuré pour le faire.
- Vérifiez si NiFi écoute dans la file d'attente Redis NRT
-
Le serveur NiFi enregistre les programmes d'écoute PUBSUB avec Redis pour recevoir les événements.
Utilisez la commande PUBSUB CHANNELS sur tous les serveurs maîtres pour confirmer que les programmes d'écoute de NiFi sont activés :redis-cli pubsub channels | grep -i nifi {cache-demoqaauth-services/cache/WCNifiDistributedMapCache}-invalidation {cache-demoqaauth-services/cache/WCNifiBatchDistributedMapCache}-invalidationSi le programme d'écoute (WCNifiDistributedMapCache) n'est pas actif, NiFi risque de ne pas s'exécuter ou de ne pas fonctionner correctement.
Assurez-vous que WCNifiDistributedMapCache est configuré comme suit."[${TENANT:-}${ENVIRONMENT:-}auth]:services/cache/WCNifiDistributedMapCache": localCache: enabled: false remoteCache: enabled: false remoteInvalidations: publish: true publishFormat: plain
- Utiliser le traçage dans NiFi pour confirmer que les programmes d'écoute sont actifs
-
L'étape suivante consiste à utiliser le traçage dans NiFi pour confirmer que les programmes d'écoute NRT se déclenchent lorsque des événements sont publiés sur les canaux (WCNifiDistributedMapCache et WCNifiBatchDistributedMapCache).
Activez les traces suivantes danslogback.xml:<logger name="com.hcl.commerce.cache" level="TRACE" /> <logger name="org.redisson" level="TRACE" />Confirmez le déclencheur des programmes d'écoute en recherchant la méthode onMessage dans la trace :... onMessage: onMessage(CharSequence pattern, CharSequence channel, String stringMessage) ..Vérifiez également que WCNifiBatchDistributedMapCache est configuré comme suit."[${TENANT:}${ENVIRONMENT:-}auth]:services/cache/WCNifiBatchDistributedMapCache": localCache: enabled: false remoteCache: enabled: false remoteInvalidations: publish: true publishFormat: plain