Symptômes

La barre de recherche ne propose pas l'option pour rechercher dans tous les dossiers

Pour l'ensemble des utilisateurs

Si c'est le cas pour l'ensemble des utilisateurs, cela fait probablement suite à une migration des mails au niveau du système de fichier. Cela signifie que l'index de recherche d'Elasticsearch n'existe pas : vous pouvez exécuter la tâche ConsolidateMailSpoolIndexJob pour créer l'index et indexer l'ensemble des mails du serveur :

ou

Pour quelques utilisateurs

Si le problème ne concerne qu'un ou quelques utilisateurs, cela signifie que l'index ElasticSearch les concernant est inexistant ou corrompu, il faut le recréer :

Il manque des résultats dans la recherche

Lorsqu'un ou quelques utilisateurs signalent des problèmes de recherches incomplètes, de même que pour le problème précédent cela signifie que leur index ElasticSearch est corrompu ou doit simplement être mis à jour, il suffit alors d'agir sur le ou les utilisateurs concernés :

Une erreur s'affiche lors d'une recherche

Cela peut provenir d'une incohérence entre la liste des dossiers au niveau IMAP et dans la base de données, l'action de maintenance "Valider et Réparer" accessible depuis l'onglet Maintenance de la fiche utilisateur permet de reconstruire cette liste, une ré-indexation de la boite de messagerie doit ensuite corriger le problème : exécuter l'action "Reconstruire l'index" plus bas dans la même page.

Si ce n'est pas le cas, les logs /var/log/bm-webmail.errors peuvent indiquer l'origine du problème.

Une erreur s'affiche lors de l'accès à un message trouvé par une recherche

Il s'agit probablement d'un défaut d'indexation lorsque qu'un message a été déplacé, l'action de maintenance "Consolider la boite mail" accessible depuis l'onglet Maintenance de la fiche utilisateur permet de mettre à jour l'index de recherche.

Problème/Confirmation

Si vous constatez un dysfonctionnement de la recherche dans BlueMind vous pouvez en déterminer la cause avec la commande :

curl -XGET --silent 'http://localhost:9200/_cluster/health'

Cette commande permet d'afficher l'état du cluster ElasticSearch, si le statut est 'green' tout va bien, s'il est 'red' cela signifie qu'il y a un problème au niveau d'Elasticsearch. Cette information remonte également dans la console de monitoring.

Résolution

Plusieurs conditions peuvent empêcher le fonctionnement d'ElasticSearch :