Visión General
La API de Scheduler es para gestionar trabajos programados de Fess. Puede iniciar/detener trabajos de rastreo, crear/actualizar/eliminar configuraciones de programación.
URL Base
Lista de Endpoints
| Método | Ruta | Descripción |
|---|---|---|
| GET | /settings | Obtener lista de trabajos programados |
| GET | /setting/{id} | Obtener trabajo programado |
| POST | /setting | Crear trabajo programado |
| PUT | /setting | Actualizar trabajo programado |
| DELETE | /setting/{id} | Eliminar trabajo programado |
| PUT | /{id}/start | Iniciar trabajo |
| PUT | /{id}/stop | Detener trabajo |
Obtener Lista de Trabajos Programados
Solicitud
Parámetros
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
size | Integer | No | Número de elementos por página (por defecto: 25; configurable mediante paging.page.size en fess_config.properties) |
page | Integer | No | Número de página (a partir de 1; por defecto: 1) |
Respuesta
Nota
El objeto response siempre incluye version (versión del producto) y status (código de resultado). Consulte la descripción general de Admin API (Visión General de Admin API) para conocer el formato de respuesta común. Los ejemplos posteriores pueden omitir version por brevedad.
Nota
En las respuestas, jobLogging / crawler / available se devuelven como cadenas ("true" / "false"). running es un campo booleano exclusivo de respuesta que indica si el trabajo se está ejecutando en ese momento (no puede especificarse en las solicitudes). total es el número total de trabajos que coinciden con la consulta.
Obtener Trabajo Programado
Solicitud
Respuesta
Crear Trabajo Programado
Solicitud
Cuerpo de la Solicitud
Descripción de Campos
| Campo | Requerido | Descripción |
|---|---|---|
name | Sí | Nombre del trabajo (max. 100 caracteres) |
target | Sí | Objetivo de ejecución (max. 100 caracteres). Especifique all o un nombre de objetivo específico |
cronExpression | No | Expresión Cron (segundo minuto hora día mes día-semana). Max. 100 caracteres, validada como expresión cron. Si está vacía, el trabajo no se ejecuta de forma programada y solo puede iniciarse manualmente |
scriptType | Sí | Tipo de script (max. 100 caracteres). Actualmente solo se admite groovy |
scriptData | No | Script de ejecución. El tamaño máximo sigue form.admin.max.input.size en fess_config.properties |
jobLogging | No | Habilitar registro de trabajos (cadena) |
crawler | No | Si es un trabajo de rastreo (cadena) |
available | No | Habilitado/Deshabilitado (cadena) |
sortOrder | Sí | Orden de visualización (entero entre 0 y 2147483647) |
Nota
jobLogging / crawler / available son campos de cadena. En las solicitudes, especificar "on" o "true" (sin distinción de mayúsculas y minúsculas) los habilita; cualquier otro valor ("false", cadena vacía o no especificado) se trata como deshabilitado. En las respuestas se devuelven como "true" / "false".
Nota
crudMode se establece automáticamente en el servidor y no es necesario especificarlo en las solicitudes. Los campos de auditoría como createdBy / createdTime también se establecen en el servidor.
Respuesta
Ejemplos de Expresiones Cron
| Expresión Cron | Descripción |
|---|---|
0 0 2 * * ? | Ejecutar diariamente a las 2 AM |
0 0 0/6 * * ? | Ejecutar cada 6 horas |
0 0 2 * * MON | Ejecutar cada lunes a las 2 AM |
0 0 2 1 * ? | Ejecutar el día 1 de cada mes a las 2 AM |
Actualizar Trabajo Programado
Solicitud
Cuerpo de la Solicitud
Nota
Para las actualizaciones, id (max. 1000 caracteres) y versionNo son obligatorios. versionNo se utiliza para el bloqueo optimista; especifique el valor devuelto en la respuesta de obtención. Si el valor no coincide, la actualización falla. Los demás campos obligatorios (name / target / scriptType / sortOrder) son los mismos que para la creación.
Respuesta
Eliminar Trabajo Programado
Solicitud
Respuesta
Iniciar Trabajo
Ejecuta inmediatamente un trabajo programado.
Solicitud
Respuesta
Campos de Respuesta
| Campo | Descripción |
|---|---|
jobLogId | ID del registro del trabajo iniciado. Se emite cuando el registro de trabajos está habilitado. Es null cuando el registro de trabajos está deshabilitado. |
Notas
Si el trabajo ya está en ejecución, el inicio falla y se devuelve un error (
statusdistinto de0).Si el trabajo está deshabilitado (
availableno está habilitado), el inicio también falla con un error.jobLogIdsolo se emite cuando el registro de trabajos está habilitado (jobLoggingestá habilitado).
Detener Trabajo
Detiene un trabajo en ejecución.
Solicitud
Respuesta
Ejemplos de Uso
Crear y Ejecutar Trabajo de Rastreo
Verificar Estado del Trabajo
Información de Referencia
Visión General de Admin API - Visión general de Admin API
API de JobLog - API de registro de trabajos
Programador de Tareas - Guía de gestión del programador