Software existente que puede analizar correos electrónicos y esperar correos electrónicos dentro de un período de gracia

Administro un conjunto diverso de sistemas de respaldo, el único en común son las notificaciones por correo electrónico, cuyo estado es "Error", "Éxito", "Éxito con excepciones" y "desconocido" (donde el correo electrónico no se envía).

  • Caso 1) Espere un correo electrónico de system3@example.net todos los días, al menos una vez al día.

    Esto detectaría aquellas instancias en las que el servidor de respaldo se desconectó, hubo una interrupción de Internet u otro problema imprevisto que impidió que se ejecutara el respaldo y enviaría una notificación de éxito/fallo.

  • Caso 2) La copia de seguridad se ejecutó pero falló

    La copia de seguridad se ejecutó, pero falló, y se envió un correo electrónico indicando que ocurrió tal evento.

  • Caso 3) Copia de seguridad exitosa

    Genial, la cosa hizo lo que se suponía que debía hacer.

  • Si es el caso 1 o 2, notifíqueme, si es el caso 3, inicie sesión para la auditoría

    La aplicación me enviaría un correo electrónico en caso de falla, informes de estado semanales de todos los eventos (un correo electrónico HTML simple sería suficiente, tablas con servidores, días y estado de cada día)

Actualización: estoy buscando estrictamente soluciones basadas en correo electrónico . Es posible que se necesiten asignaciones de plantillas para cada dirección de correo electrónico para analizar correctamente los diferentes tipos de copias de seguridad. Enumeraré algunos sistemas aquí:
FreePBX, BackupExec, Appassure, WinSCP Scripts, alertas CrushFTP, qnap sync, software syncback, soluciones rsync, copias de seguridad clásicas de Windows, Bash Espere scripts (para iniciar sesión y respaldar enrutadores a través de ssh/expect), tareas de mantenimiento mensuales como pruebas de respaldo de batería y otros elementos desconocidos que brindarían las mismas 3 opciones.

Actualización: estoy buscando software empaquetado, no opciones vagas en python, php u otros. La información debe eliminarse de varios buzones e ingresarse en una base de datos.

Respuestas (1)

Dado que, presumiblemente, utilizará una dirección de correo electrónico dedicada para todos estos informes (lo haría de todos modos) , debería poder usar el servidor de correo para su parte histórica y simplemente buscar y analizar, digamos el doble de su copia de seguridad más larga ciclo.

Luego, simplemente necesitaría revisar los correos electrónicos, en una lista de fuentes conocidas, extrayendo lo último de cada uno para obtener el estado actual, obviamente, el estado inicial de cada uno sería "Fuera de línea" o "Desconocido", y luego analizar el título por el estado Cada tarea de respaldo podría tener un período de actualización esperado que podría verificarse como "Atrasado".

Todo lo anterior podría manejarse con una simple secuencia de comandos de python utilizando las bibliotecas estándar, pero los detalles dependerán del tipo de servidor de la(s) cuenta(s) de correo electrónico a las que se enviarán los informes de estado y los permisos de acceso en su organización . Hay varios ejemplos en Stack Overflow de cómo usar python para buscar correos.

Personalmente, usaría una cuenta de correo electrónico separada para los informes de estado, con un archivo automático configurado en función de la duración del historial que necesite, y simplemente ejecutaría un script de este tipo a pedido, pero también podría tener una tarea cron, o programada, que ejecuta el script en momentos específicos y, si hay algún problema, usa esa cuenta para enviarle un correo a su(s) dirección(es) personal(es).

Estoy buscando software existente.