Vue d’ensemble
L’API Scheduler permet de gérer les tâches planifiées de Fess. Vous pouvez démarrer/arrêter les tâches de crawl, créer/modifier/supprimer des configurations de planification, etc.
URL de base
Liste des endpoints
| Méthode | Chemin | Description |
|---|---|---|
| GET | /settings | Obtention de la liste des tâches planifiées |
| GET | /setting/{id} | Obtention d’une tâche planifiée |
| POST | /setting | Création d’une tâche planifiée |
| PUT | /setting | Mise à jour d’une tâche planifiée |
| DELETE | /setting/{id} | Suppression d’une tâche planifiée |
| PUT | /{id}/start | Démarrage d’une tâche |
| PUT | /{id}/stop | Arrêt d’une tâche |
Obtention de la liste des tâches planifiées
Requête
Paramètres
| Paramètre | Type | Requis | Description |
|---|---|---|---|
size | Integer | Non | Nombre d’éléments par page (défaut : 25 ; configurable via paging.page.size dans fess_config.properties) |
page | Integer | Non | Numéro de page (base 1 ; défaut : 1) |
Réponse
Note
L’objet response contient toujours version (version du produit) et status (code de résultat). Consultez Vue d’ensemble de l’API Admin pour le format de réponse commun. Les exemples suivants peuvent omettre version par souci de concision.
Note
Dans les réponses, jobLogging / crawler / available sont retournés sous forme de chaînes de caractères ("true" / "false"). running est un champ booléen, spécifique aux réponses, indiquant si la tâche est en cours d’exécution (ne peut pas être spécifié dans les requêtes). total est le nombre total de tâches correspondant à la requête.
Obtention d’une tâche planifiée
Requête
Réponse
Création d’une tâche planifiée
Requête
Corps de la requête
Description des champs
| Champ | Requis | Description |
|---|---|---|
name | Oui | Nom de la tâche (max 100 caractères) |
target | Oui | Cible d’exécution (max 100 caractères). Spécifier all ou un nom de cible spécifique |
cronExpression | Non | Expression Cron (seconde minute heure jour mois jour-semaine). Max 100 caractères, validée en tant qu’expression cron. Si vide, la tâche n’est pas planifiée et ne peut être démarrée que manuellement |
scriptType | Oui | Type de script (max 100 caractères). Actuellement seul groovy est supporté |
scriptData | Non | Script à exécuter. La taille maximale est définie par form.admin.max.input.size dans fess_config.properties |
jobLogging | Non | Activer la journalisation des tâches (chaîne) |
crawler | Non | S’il s’agit d’une tâche de crawl (chaîne) |
available | Non | Activé/Désactivé (chaîne) |
sortOrder | Oui | Ordre d’affichage (entier entre 0 et 2147483647) |
Note
jobLogging / crawler / available sont des champs de type chaîne. Dans les requêtes, spécifier "on" ou "true" (insensible à la casse) les active ; toute autre valeur ("false", chaîne vide ou non spécifié) est traitée comme désactivée. Dans les réponses, ils sont retournés sous la forme "true" / "false".
Note
crudMode est défini automatiquement côté serveur et n’a pas besoin d’être spécifié dans les requêtes. Les champs d’audit tels que createdBy / createdTime sont également définis côté serveur.
Réponse
Exemples d’expressions Cron
| Expression Cron | Description |
|---|---|
0 0 2 * * ? | Exécution tous les jours à 2h du matin |
0 0 0/6 * * ? | Exécution toutes les 6 heures |
0 0 2 * * MON | Exécution tous les lundis à 2h du matin |
0 0 2 1 * ? | Exécution le 1er de chaque mois à 2h du matin |
Mise à jour d’une tâche planifiée
Requête
Corps de la requête
Note
Pour les mises à jour, id (max 1000 caractères) et versionNo sont obligatoires. versionNo est utilisé pour le verrouillage optimiste ; spécifier la valeur retournée dans la réponse de récupération. Si la valeur ne correspond pas, la mise à jour échoue. Les autres champs obligatoires (name / target / scriptType / sortOrder) sont identiques à ceux de la création.
Réponse
Suppression d’une tâche planifiée
Requête
Réponse
Démarrage d’une tâche
Exécute immédiatement une tâche planifiée.
Requête
Réponse
Champs de la réponse
| Champ | Description |
|---|---|
jobLogId | ID du journal de la tâche démarrée. Émis lorsque la journalisation des tâches est activée. Vaut null lorsque la journalisation des tâches est désactivée. |
Notes
Si la tâche est déjà en cours d’exécution, le démarrage échoue et une erreur est retournée (
statusdifférent de0).Si la tâche est désactivée (
availablen’est pas activé), le démarrage échoue également avec une erreur.jobLogIdest émis uniquement lorsque la journalisation des tâches est activée (jobLoggingest activé).
Arrêt d’une tâche
Arrête une tâche en cours d’exécution.
Requête
Réponse
Exemples d’utilisation
Création et exécution d’une tâche de crawl
Vérification de l’état des tâches
Informations complémentaires
Vue d’ensemble de l’API Admin - Vue d’ensemble de l’API Admin
API JobLog - API des journaux de tâches
Planificateur de tâches - Guide de gestion du planificateur