Configuración

Configuración de batches

Dentro de Anjana Data Platform existen múltiples procesos batch que se ejecutan de forma desatendida de forma automática conforme a la periodicidad que se configure en la tabla de variables del sistema (Configuración/Ajustes) del nuevo módulo de Administración. Algunos ejemplos son el batch de sincronización de usuarios o el batch de expiración. Para conocer qué hace cada batch, consultar la guía Batches.

El cambio de la expresión cron de un batch no surte efecto hasta que se reinicia el servicio en el que se ejecuta (Kerno o Zeus). Hasta ese reinicio, la plataforma sigue utilizando el valor anterior de la variable. Por ese motivo, junto a cada batch se indica el servicio que el administrador debe reiniciar para que el nuevo valor se aplique.

image-20260722-124110.png

Para configurar la programación se emplean expresiones cron de Spring. Estas expresiones se componen de 6 elementos que determinan la frecuencia de ejecución:

  • El primer elemento hace referencia a los segundos (Puede adquirir valores entre 0 y 59).

    • Acepta * para indicar para indicar que se ejecuta para todos los posibles valores.

  • El segundo elemento hace referencia a los minutos (Puede adquirir valores entre 0 y 59).

    • Acepta * para indicar para indicar que se ejecuta para todos los posibles valores.

  • El tercer elemento hace referencia a las horas (Puede adquirir valores entre 0 y 23).

    • Acepta * para indicar para indicar que se ejecuta para todos los posibles valores.

  • El cuarto elemento hace referencia al día del mes (Puede adquirir valores entre 1 y 31).

    • Acepta ? para dejar el campo libre si ya se definió el día de la semana.

    • Acepta * para indicar para indicar que se ejecuta para todos los posibles valores.

  • El quinto elemento hace referencia al mes del año (Puede adquirir valores entre 1 y 12).

    • Acepta * para indicar para indicar que se ejecuta para todos los posibles valores.

  • El sexto elemento al día de la semana (Puede adquirir valores entre 0 y 7 , tanto 0 como 7 representan domingo, los demás números van de 1=lunes hasta 6=sábado).

    • Acepta ? para dejar el campo libre si ya se definió el día del mes.

    • Acepta * para indicar para indicar que se ejecuta para todos los posibles valores.

Ejemplos:

  • Si se configura la expresión 0 0 8 * * * el batch se ejecutará todos los días a las 8am .

  • Si se configura la expresión 0 30 9 1 * ? el batch se ejecutará a las 9:30 am el día 1 de cada mes.

Otras convenciones que se siguen:

  • Las comas se pueden usar para separar los elementos de una lista (por ejemplo: 1,15, el 1 y el 15).

  • Se puede usar el - para expresar un rango de elementos (por ejemplo: de 8-10, de 8 a 10, ambos incluidos). El rango siempre incluye los extremos.

Para más ejemplos ver la documentación oficial: Spring Cron Expressions.

Resumen de la configuración de batches

Cada batch se programa mediante su propiedad anjana.scheduling.* y se ejecuta en un servicio concreto, que es el que debe reiniciarse para que un cambio de programación surta efecto:

Proceso

Servicio

Propiedad

Valor por defecto

Aviso de licencia

Zeus

anjana.scheduling.licenseNotification

0 0 0 ? * *

Sincronización de usuarios

Zeus

anjana.scheduling.synchronizeUsers

0 0 0 ? * *

Expiración

Kerno

anjana.scheduling.expiration

0 45 7 ? * *

Preaviso por expiración (notificaciones)

Kerno

anjana.scheduling.notification

0 45 7 ? * *

Preaviso por expiración — ventana en días

Kerno

anjana.notification.expiration

4

Indexación completa

Kerno

anjana.scheduling.indexAll

Desactivado

Aviso de licencia

Servicio: Zeus.

El batch para el aviso de licencia a punto de expirar mediante la propiedad:

anjana.scheduling.licenseNotification se usa para configurar la tarea programada para enviar notificaciones por licencia a punto de expirar o expirada (por defecto = 0 0 0 ? * * ).

Sincronización de usuarios

Servicio: Zeus.

El batch para la sincronización de usuarios desde proveedores a la base de datos de Anjana Data mediante la propiedad:

anjana.scheduling.synchronizeUsers se usa para configurar la tarea programada para sincronizar en base de datos los usuarios que vienen de los proveedores de autenticación (por defecto = 0 0 0 ? * * ).

Expiración

Servicio: Kerno.

El batch de expiración se configura mediante la propiedad:

anjana.scheduling.expiration se usa para configurar la expiración de objetos (por defecto: 0 45 7 ? * *).

Preaviso por expiración (notificaciones)

Servicio: Kerno.

El batch de preaviso por expiración se configura mediante las propiedades:

  • anjana.scheduling.notification se usa para configurar la notificación de objetos próximos a expirar (por defecto: 0 45 7 ? * *).

  • anjana.notification.expiration se usa para configurar, en número de días, los objetos que van a expirar dentro de ese rango (por defecto: 4).

Indexación completa

Servicio: Kerno.

El batch de indexación de todos los objetos (entidades y relaciones) se configura mediante la siguiente propiedad:

anjana.scheduling.indexAll se usa si se quiere configurar la indexación periódica de todos los objetos de la aplicación (con las excepciones mencionadas en la Guía de Usuario). Esta configuración está, por defecto, desactivada.

Este apartado está dirigido principalmente a administradores técnicos y funcionales responsables de la configuración y el mantenimiento de Anjana Data Platform.