...
Info |
---|
Disponible a partir de Release 5.3.0 (Ultimate) de Plataforma |
Introducción
El nuevo activo Verificador de Procesos permite comprobar el resultado de la ejecución de procesos desarrollados sobre la plataforma permitiendo verificar la carga correcta de datos en plataforma.
Además de esto, el Verificador de Procesos nos permite añadir reglas a estos procesos para un mayor control de los datos insertados, por ejemplo una regla que compruebe la correcta integridad de los datos cargados (dataExist) o una que nos permita controlar el número de registros cargados (volumetry).
Conceptos del Verificador de Procesos
En el diagrama podemos ver el flujo que sigue el Verificador de Procesos:
...
Entidad bitácora
Esta entidad contiene la información sobre los procesos a verificar.
...
process: en este campo se registrará el nombre del proceso.
date: hace referencia al campo del proceso que almacena la fecha de la inserción de información.
granularity: frecuencia de los datos insertados.
temporality: frecuencia con la que se insertan los datos.
day_week: día de la semana en la que se realiza la carga de datos (Lunes = 1, Domingo = 7).
day_month: día del mes en el que se realiza la carga de datos.
monthly_mismatch: diferencia de meses entre la carga de datos y la información que esta referencia.
weekly_mismatch: diferencia de semanas entre la carga de datos y la información que esta referencia.
daily_mismatch: diferencia diaria entre la carga de datos y la información que esta refencia.
comments: comentarios que podemos añadir sobre el proceso para más información.
rules: campo que alberga la definición de las reglas que aplican a cada proceso. Este campo se divide a su vez de la siguiente forma:
type: tipo de regla que aplica para este proceso.
records: registros esperados para este proceso (solo aplica en regla “volumétrica”).
tolerance: tolerancia de registros esperados (solo aplica en regla “volumétrica”).
...
Entidad Registro
Esta entidad almacena el registro de ejecución de los procesos y si han superado las distintas reglas definidas para estos:
...
process: nombre del proceso.
date: fecha donde se ha realizado la verificación.
type: tipo de regla que se ha verificado.
detail: información en caso de error en la verificación.
status: registro sobre el estado del proceso para cierta regla(“Passed” o “Failed”).
¿Cómo usar el Verificador de procesos?
Flujo Main
Para usar el Verificador de Procesos crearé un flujo en el FlowEngine como este:
...
fecha: fecha de día de hoy.
ont: entidad bitácora de la cual obtendremos la información.
ontLog: entidad registro donde insertaremos la información.
Flujo de ejecución de las reglas
En este flujo se define toda la configuración necesaria antes de verificar las distintas reglas de cada proceso:
...
Después de pasar por el flujo de la regla que se deba aplicar realizaremos la inserción del resultado en la entidad registro.
Reglas:
Después de separar por reglas entramos a la definición de cada una de ellas en sus respectivos flujos. Podremos añadir cuantas reglas deseemos, inicialmente se incluyen estas dos:
Regla dataExist
En esta regla comprobamos la existencia de datos para la granularidad especificada en el proceso, en caso de no existir datos se dará la regla como “Failed” y se dejará reflejado en el campo “detail” un mensaje explicativo del motivo del error.
En el caso contrario la regla quedara como “Passed”.
...
Regla volumetry
Con esta regla se comprueba el volumen de datos registrados para un proceso en específico. El número de registros esperados y la tolerancia (número porcentual) viene dados dentro de la misma regla.
En caso de recibir un numero de registros que este dentro de los esperados se dará la regla como “Passed”, pero en caso contrario esta quedará como “Failed” y se añadira en el campo “detail” un mensaje explicativo del fallo.
...
Ejemplo de ejecución
A continuación, mostraremos un ejemplo de la ejecución de este verificador para estos procesos:
Código del ejemplo para el Flow Engine
En este ZIP se encuentra el código del activo para importar en Plataforma.
...
Una vez en esta página haremos click en el boton “Upload ZIP” y esto tran ello en “Import“.
...
Definición Proceso 1:
process: Process1
date: datetime
fromat: yyyy/mm/dd
granularity: daily
temporality: weekly
day_week: 0
day_month: 0
monthly_mismatch: 0
weekly_mismatch: 0
daily_mismatch: 0
rules:
Item 1
type: dataExist
Item 2
type: volumetry
records: 336
tolerance: 20
Definición Proceso 2:
process: Process2
date: datetime
fromat: yyyy/mm/dd
granularity: daily
temporality: weekly
day_week: 0
day_month: 0
monthly_mismatch: 0
weekly_mismatch: 0
daily_mismatch: 0
rules:
Item 1
type: dataExist
Item 2
type: volumetry
records: 1
tolerance: 20
...