Saltar a contenido

RUNBOOK — job-envio-dass

proveedores_dass_fila (L16), proveedores_dass_asics (L17), proveedores_dass_umbro (L18)

Dato FILA ASICS UMBRO
Programacion 0 17 * * * 10 17 * * * 20 17 * * *
Comando .venv/bin/python -m envio_dass FILA ... ASICS ... UMBRO
Auditoria (ATHENAS.ods.tbl_control_procesos) ID08 - PY_ENVIA_EXTERNO_TXT_DASS_FILA_DIARIA ..._DASS_ASICS_DIARIA ..._DASS_UMBRO_DIARIA
Logs /var/log/dabra/proveedores_dass_fila/ ..._asics/ ..._umbro/
Datos /var/lib/dabra/proveedores_dass_fila/{tmp,output,quarantine} idem asics idem umbro

Duracion esperada: ~1 min por dia y marca (log del original; medir). Timeout 9 min (propuesto), para no solapar con la marca siguiente. Estados de auditoria: Success / Error.

Codigo Significado Accion
0 Todo enviado —
1 Fallo SP, backup, SFTP o auditoria Ver log y correo "ERROR"; revisar quarantine/; reejecutar
2 Configuracion o argumentos invalidos (marca fuera de FILA/ASICS/UMBRO, fechas) Revisar .env / comando

Comandos

python -m envio_dass FILA --dry-run                     # SP + archivos en output/, sin enviar ni auditar
python -m envio_dass FILA                               # diario: ayer
python -m envio_dass ASICS --desde 2026-10-01 --hasta 2026-10-05   # reproceso de un rango
python -m envio_dass UMBRO -v 2026-07-26:2026-07-31 -v 2026-08-01:2026-08-08   # varias ventanas
Con rango o ventanas se usa el perfil reproceso (id de auditoria ID08 - PY_ENVIA_EXTERNO_TXT_<MARCA>_DIARIA (v2 manual), como main_v2.py). Fechas: AAAA-MM-DD o DD/MM/AAAA.

Reproceso

Seguro: cada dia vuelve a ejecutar el SP y reenvia SLAM_SI_<MARCA>_<semana>.csv con el mismo nombre. Cada ejecucion real audita y manda un correo por dia. No ejecutar dos marcas ni un reproceso a la vez, ni durante Adidas (16:40): comparten ods.tmp_envios_dass y se pisarian los datos.

Rollback

No hay. Un archivo mal enviado se corrige reprocesando ese dia.

Problemas conocidos

  • Si SharePoint falla, no se envia nada a DASS (el backup va primero, como en el original).
  • Si el SP devuelve 0 filas se sube un backup vacio, no se envia nada y se manda la confirmacion (igual que el original); queda un WARNING en el log.
  • Un fallo de SFTP no corta los demas archivos del dia; el dia queda en quarantine/ y el job sale con 1.

Fuente: repositorio job-envio-dass, versión b7a60e4. Página generada con tools/publicar_docs.py.