Saltar a contenido

RUNBOOK — job-ingesta-modo

automatizacion_bajada_modo (W24)

Dato Valor
Programacion 0 22 * * 1-5
Duracion esperada no medida (propuesta: < 2 min)
Timeout 20 min (propuesto)
Comando .venv/bin/python -m ingesta_modo
Efecto Reemplaza/acumula los CSV mensuales en SharePoint, borra la entrada procesada, alertas Telegram, fila en tbl_control_procesos
Logs /var/log/dabra/automatizacion_bajada_modo/<fecha_hora>.log
Auditoria ATHENAS.ods.tbl_control_procesos: ID08 - PY_Automatizacion_Bajada_Modo. Num_Registros = archivos encontrados en MODO_INPUT. Estados Success / Error
Codigo Significado Accion
0 Corrida terminada (aunque haya alertas por archivo) Mirar Telegram si hubo alertas
1 Fallo general (token, SharePoint) o auditoria Ver log; reejecutar
2 Configuracion invalida Revisar .env
python -m ingesta_modo --dry-run   # los CSV mensuales quedan en output/; no sube, no borra, no alerta, no audita
python -m ingesta_modo

Alertas de Telegram

Alerta Que paso Que hacer
ERROR COLUMNAS El archivo trae columnas nuevas o le faltan Hablar con MODO; el archivo queda en MODO_INPUT y vuelve a alertar cada corrida hasta que se retire o corrija
FECHAS INVALIDAS Filas con fecha no interpretable (se excluyen, el resto se sube y el archivo se borra) Pedir esas filas a MODO
ERROR BAJADA / SUBIDA SHAREPOINT Fallo al leer el mes existente o al subir; el archivo no se borra Reejecutar (es idempotente: semanal sin repetir payment_id, mensual reemplaza)

Reproceso

Seguro: reejecutar no duplica pagos (dedup por payment_id en semanales; los mensuales reemplazan). Para reprocesar un archivo, volver a dejarlo en MODO_INPUT.

Rollback

No hay. SharePoint conserva versiones de cada CSV mensual (restaurar desde el historial de versiones).

Problemas conocidos

  • Un archivo con nombre no reconocido, con columnas distintas o sin ninguna fila de fecha valida se queda en MODO_INPUT (y avisa/registra cada corrida).
  • Un error de subida no marca Error en la auditoria (solo alerta Telegram); igual que el original.
  • Las alertas de Telegram se reintentan una vez; si no salen, solo queda WARNING en el log.

Fuente: repositorio job-ingesta-modo, versión d316cd1. Página generada con tools/publicar_docs.py.