Übersicht
Die Scheduler API dient zur Verwaltung von geplanten Jobs in Fess. Sie können Crawl-Jobs starten/stoppen sowie Zeitplan-Einstellungen erstellen, aktualisieren und löschen.
Basis-URL
Endpunktliste
| Methode | Pfad | Beschreibung |
|---|---|---|
| GET | /settings | Geplante Jobs auflisten |
| GET | /setting/{id} | Geplanten Job abrufen |
| POST | /setting | Geplanten Job erstellen |
| PUT | /setting | Geplanten Job aktualisieren |
| DELETE | /setting/{id} | Geplanten Job löschen |
| PUT | /{id}/start | Job starten |
| PUT | /{id}/stop | Job stoppen |
Geplante Jobs auflisten
Request
Parameter
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
size | Integer | Nein | Anzahl der Einträge pro Seite (Standard: 25; konfigurierbar über paging.page.size in fess_config.properties) |
page | Integer | Nein | Seitennummer (1-basiert; Standard: 1) |
Response
Bemerkung
Das response-Objekt enthält stets version (Produktversion) und status (Ergebniscode). Die gemeinsame Antwortstruktur ist in Admin API Übersicht beschrieben. In späteren Beispielen kann version der Übersichtlichkeit halber weggelassen werden.
Bemerkung
Im Response werden jobLogging / crawler / available als Zeichenketten ("true" / "false") zurückgegeben. running ist ein boolescher Wert und ein reines Response-Feld, das anzeigt, ob der Job gerade ausgeführt wird (kann im Request nicht gesetzt werden). total ist die Gesamtanzahl der zur Abfrage passenden Jobs.
Geplanten Job abrufen
Request
Response
Geplanten Job erstellen
Request
Request-Body
Feldbeschreibungen
| Feld | Erforderlich | Beschreibung |
|---|---|---|
name | Ja | Job-Name (max. 100 Zeichen) |
target | Ja | Ausführungsziel (max. 100 Zeichen). all oder einen bestimmten Zielnamen angeben |
cronExpression | Nein | Cron-Ausdruck (Sekunde Minute Stunde Tag Monat Wochentag). Max. 100 Zeichen, wird als Cron-Ausdruck validiert. Ist das Feld leer, wird der Job nicht geplant und kann nur manuell gestartet werden |
scriptType | Ja | Skript-Typ (max. 100 Zeichen). Derzeit wird nur groovy unterstützt |
scriptData | Nein | Ausführungsskript. Die maximale Größe richtet sich nach form.admin.max.input.size in fess_config.properties |
jobLogging | Nein | Job-Protokollierung aktivieren (Zeichenkette) |
crawler | Nein | Ob es ein Crawler-Job ist (Zeichenkette) |
available | Nein | Aktiviert/Deaktiviert (Zeichenkette) |
sortOrder | Ja | Anzeigereihenfolge (Ganzzahl zwischen 0 und 2147483647) |
Bemerkung
jobLogging / crawler / available sind Zeichenkettenfelder. Im Request aktiviert die Angabe von "on" oder "true" (Groß-/Kleinschreibung wird nicht berücksichtigt) das jeweilige Feld; jeder andere Wert ("false", leere Zeichenkette oder nicht angegeben) wird als deaktiviert behandelt. Im Response werden die Werte als "true" / "false" zurückgegeben.
Bemerkung
crudMode wird serverseitig automatisch gesetzt und muss im Request nicht angegeben werden. Audit-Felder wie createdBy / createdTime werden ebenfalls serverseitig gesetzt.
Response
Cron-Ausdrücke Beispiele
| Cron-Ausdruck | Beschreibung |
|---|---|
0 0 2 * * ? | Täglich um 2:00 Uhr ausführen |
0 0 0/6 * * ? | Alle 6 Stunden ausführen |
0 0 2 * * MON | Jeden Montag um 2:00 Uhr ausführen |
0 0 2 1 * ? | Am 1. jeden Monats um 2:00 Uhr ausführen |
Geplanten Job aktualisieren
Request
Request-Body
Bemerkung
Für Aktualisierungen sind id (max. 1000 Zeichen) und versionNo Pflichtfelder. versionNo wird für optimistisches Sperren verwendet; geben Sie den Wert an, der im GET-Response zurückgegeben wurde. Stimmt der Wert nicht überein, schlägt die Aktualisierung fehl. Die weiteren Pflichtfelder (name / target / scriptType / sortOrder) sind dieselben wie beim Erstellen.
Response
Geplanten Job löschen
Request
Response
Job starten
Führt einen geplanten Job sofort aus.
Request
Response
Response-Felder
| Feld | Beschreibung |
|---|---|
jobLogId | Job-Protokoll-ID des gestarteten Jobs. Wird ausgegeben, wenn die Job-Protokollierung aktiviert ist. Ist die Job-Protokollierung deaktiviert, ist der Wert null. |
Hinweise
Wenn der Job bereits läuft, schlägt der Start fehl und es wird ein Fehler zurückgegeben (
statusungleich0).Wenn der Job deaktiviert ist (
availableist nicht aktiviert), schlägt der Start ebenfalls fehl und es wird ein Fehler zurückgegeben.jobLogIdwird nur ausgegeben, wenn die Job-Protokollierung aktiviert ist (jobLoggingist aktiviert).
Job stoppen
Stoppt einen laufenden Job.
Request
Response
Verwendungsbeispiele
Crawl-Job erstellen und ausführen
Job-Status überprüfen
Referenzinformationen
Admin API Übersicht - Admin API Übersicht
JobLog API - Job-Protokoll API
Scheduler - Scheduler-Verwaltungsanleitung