Saltar a contenido

RUNBOOK — job-ingesta-dolarapi

dolarapi_minerva (L21)

Dato Valor
Programación Por definir (inventario: manual, sin cron). Propuesta: 0 19 * * * (el readme original pedía “después de las 19 hs”)
Duración esperada < 1 min (propuesto; medir)
Timeout 10 min (propuesto)
Comando .venv/bin/python -m ingesta_dolarapi
Efecto Escribe en MINERVA.ods.usd_exchange_rates (reemplaza por casa+fecha) y en tbl_control_procesos; envía correo
Logs /var/log/dabra/dolarapi_minerva/<fecha_hora>.log
Auditoría MINERVA.ods.tbl_control_procesos, id ID12 - USD Exchange Rate
Código Significado Acción
0 Cotizaciones cargadas —
1 Falló la API (tras 3 intentos), la carga o la auditoría Ver log y correo; reejecutar
2 Configuración faltante Revisar .env
python -m ingesta_dolarapi --dry-run   # descarga y muestra, sin tocar nada
python -m ingesta_dolarapi             # real

Reproceso: seguro. Reemplaza las filas de la misma casa y fecha dentro de una transacción; si algo falla se revierte. Cada ejecución real inserta una fila de auditoría y envía correo.

Rollback: no hay. Para deshacer una carga, borrar de usd_exchange_rates las filas de esa fecha (la API no guarda histórico propio).

Problemas conocidos: si falla el correo el job NO falla (solo WARNING). Si la tabla destino aún no existe, la primera carga falla en el DELETE (en producción ya existe).


Fuente: repositorio job-ingesta-dolarapi, versión 2180fb5 (con cambios locales). Página generada con tools/publicar_docs.py.