Aperçu
Les connecteurs DataStore de Fess fournissent une fonctionnalité permettant de récupérer et d’indexer du contenu depuis des sources de données autres que les sites web ou les systèmes de fichiers.
En utilisant les connecteurs DataStore, vous pouvez rendre recherchables les données provenant des sources suivantes :
Stockage cloud (Box, Dropbox, Google Drive, OneDrive)
Outils de collaboration (Confluence, Jira, Slack)
Bases de données (MySQL, PostgreSQL, Oracle, etc.)
Autres systèmes (Git, Salesforce, Elasticsearch, etc.)
Connecteurs disponibles
Fess fournit des connecteurs pour diverses sources de données. La plupart des connecteurs sont fournis sous forme de plugins et peuvent être installés selon les besoins.
Stockage cloud
| Connecteur | Plugin | Description |
|---|---|---|
| Connecteur Box | fess-ds-box | Exploration des fichiers et dossiers Box.com |
| Connecteur Dropbox | fess-ds-dropbox | Exploration des fichiers et dossiers Dropbox |
| Connecteur Google Workspace | fess-ds-gsuite | Exploration de Google Drive |
| Connecteur Microsoft 365 | fess-ds-microsoft365 | Exploration de OneDrive, SharePoint, etc. |
Outils de collaboration
| Connecteur | Plugin | Description |
|---|---|---|
| Connecteur Atlassian | fess-ds-atlassian | Exploration de Confluence et Jira |
| Connecteur Slack | fess-ds-slack | Exploration des messages et fichiers Slack |
Outils de développement et opérations
| Connecteur | Plugin | Description |
|---|---|---|
| Connecteur Git | fess-ds-git | Exploration du code source des dépôts Git |
| Connecteur Elasticsearch/OpenSearch | fess-ds-elasticsearch | Récupération de données depuis Elasticsearch/OpenSearch |
| Connecteur Salesforce | fess-ds-salesforce | Exploration des objets Salesforce |
Bases de données et fichiers
| Connecteur | Plugin | Description |
|---|---|---|
| Connecteur de base de données (recherche de base de données) | fess-ds-db | Récupération de données depuis les bases de données compatibles JDBC |
| Connecteur CSV | fess-ds-csv | Récupération de données depuis les fichiers CSV |
| Connecteur JSON | fess-ds-json | Récupération de données depuis les fichiers JSON |
Installation des connecteurs
Installation des plugins
Les plugins de connecteurs DataStore peuvent être installés depuis l’interface d’administration.
Depuis l’interface d’administration
Connectez-vous à l’interface d’administration
Naviguez vers « Système » -> « Plugin »
Cliquez sur le bouton « Installer »
Sélectionnez le plugin dans l’onglet « Distant » (ou téléchargez un fichier JAR depuis l’onglet « Local »)
Cliquez sur « Installer »
Redémarrez Fess
Configuration de base des DataStores
La configuration des connecteurs DataStore s’effectue dans l’interface d’administration sous « Crawler » -> « DataStore ».
Éléments de configuration communs
Éléments de configuration communs à tous les connecteurs DataStore :
| Élément | Description |
|---|---|
| Nom | Nom d’identification de la configuration |
| Description | Description de la configuration |
| Nom du handler | Nom du handler du connecteur à utiliser (ex: CsvDataStore) |
| Paramètres | Paramètres de configuration spécifiques au connecteur (format key=value) |
| Script | Script de mapping des champs d’index |
| Boost | Priorité dans les résultats de recherche |
| Autorisations | Autorisations d’accès aux documents récupérés par ce connecteur |
| Hôtes virtuels | Hôte virtuel auquel cette configuration s’applique |
| Ordre d’affichage | Ordre d’affichage dans la liste des configurations |
| Actif | Activer ou non cette configuration |
Configuration des paramètres
Les paramètres sont spécifiés au format key=value séparés par des retours à la ligne :
Configuration du script
Le script permet de mapper les données récupérées vers les champs d’index de Fess. Chaque ligne du script associe un champ d’index Fess (membre gauche) au champ fourni par le connecteur (membre droit).
Voici un exemple pour le connecteur CSV avec les colonnes d’en-tête link, subject et body :
Note
Les noms de champs utilisables dans le script varient selon le connecteur. Box/Dropbox/Google Drive/OneDrive référencent l’objet récupéré avec le préfixe file.* ; Slack utilise message.* ; Jira utilise issue.*. En revanche, les connecteurs CSV, JSON et Base de données n’utilisent aucun préfixe ; les champs sont référencés directement :
CSV : noms des colonnes d’en-tête (si
has_header_line=true), oucell1,cell2, … (index base 1) ; ainsi quecsvfileetcsvfilename.JSON : noms des champs de l’objet JSON.
Base de données : noms des colonnes (alias) du résultat SELECT.
Consultez la documentation individuelle de chaque connecteur pour plus de détails.
Configuration de l’authentification
La plupart des connecteurs DataStore nécessitent une authentification (OAuth 2.0, clé API, compte de service, etc.).
Les paramètres d’authentification varient selon le connecteur. Consultez la documentation de chaque connecteur pour les détails de configuration de l’authentification.
Paramètres communs
Paramètres communs à tous les connecteurs DataStore :
| Paramètre | Défaut | Description |
|---|---|---|
readInterval | 0 | Délai d’attente entre le traitement de chaque enregistrement (en millisecondes). Utilisez ce paramètre pour réduire la charge du serveur lors du traitement de grandes quantités de données. |
script_type | groovy | Type de moteur de script utilisé pour le mappage des champs d’index. Par défaut, seul groovy est disponible. |
Dépannage
Le connecteur n’apparaît pas
Vérifiez que le plugin est correctement installé
Redémarrez Fess
Vérifiez les erreurs dans les logs
Erreur d’authentification
Vérifiez que les informations d’authentification sont correctes
Vérifiez la date d’expiration du token
Vérifiez que les autorisations nécessaires sont accordées
Vérifiez que l’accès API est autorisé côté service
Impossible de récupérer les données
Vérifiez le format des paramètres
Vérifiez les droits d’accès aux dossiers/fichiers cibles
Vérifiez les paramètres de filtre
Vérifiez les messages d’erreur détaillés dans les logs
Configuration de débogage
Pour investiguer les problèmes, ajustez le niveau de log. Le crawling des datastores s’exécute dans le processus crawler ; c’est donc le fichier de configuration des logs du crawler qu’il faut modifier :
app/WEB-INF/env/crawler/resources/log4j2.xml :
Informations de référence
Crawl de magasin de données - Guide de configuration DataStore
Présentation - Guide de gestion des plugins
API DataConfig - API de configuration DataStore