Cuándo ignorar los errores comunes y el programa se recupera de [cerrado]

8

Tengo un programa que realiza cientos de solicitudes CURL diarias, solicitudes SMTP y otras solicitudes. Menos del 1 por ciento de las veces, una solicitud CURL o SMTP fallará. Lo mejor que puedo decir es que la causa del problema es externa y no se puede arreglar para que sea 100% confiable. Mi programa siempre puede recuperarse de él y nunca se necesita interacción humana. Tengo un sistema para enviar una alerta por correo electrónico cuando algo falla. La gran mayoría de lo que recibo son estos fallos inofensivos de CURL y SMTP.

¿No debería enviar una alerta por correo electrónico por fallas comunes de las que se recupera el programa?

ganso
fuente
1
Como parece ser el autor y el único usuario, la suya es la única opinión que importa.
Caleb
@Caleb No soy el único usuario en la parte frontal o posterior de esta aplicación, pero soy el único desarrollador.
Ganso
13
Entonces definitivamente le preguntas al grupo equivocado de personas. ¿Por qué preguntarnos a un grupo de personas que nunca usarán su programa, cuando podría preguntar a los usuarios reales qué preferirían?
Caleb
44
@Caleb Porque creo que esta es una pregunta que se aplica a muchas personas y muchos proyectos y quiero entender mejor la decisión. "solo envíe un correo electrónico, si la tasa de error excede un límite preestablecido que indica que se necesita intervención humana". Fue muy útil para mí.
Ganso
En lugar de enviar un correo electrónico, podría escribir en un registro lo que sucedió y tal vez simplemente establecer un trabajo cron para enviar un correo electrónico al día si ocurrieran estos errores, para que el usuario sepa que podría estar interesado en verificar lo que sucedió ...
Bakuriu

Respuestas:

13

Depende de su aplicación.

Los correos electrónicos pueden ser útiles para una estadística, pero si no, evitaría este correo no deseado.
Lo que hago en casos similares: envíe un resumen una vez al día para estar informado sobre el rendimiento de su programa (y que todavía se está ejecutando).

Solo enviaría un correo electrónico, si la tasa de error excede un límite preestablecido que indica que se necesita intervención humana.

MrSmith42
fuente
3
Incluso un informe de una vez al día puede ser demasiado. Una vez a la semana podría estar bien para muchas personas. (Bonificación: dé al destinatario la opción de elegir con qué frecuencia enviarles el informe)
Curiousdannii
Mayor bonificación: brinde al usuario la opción de no ser informado por correo electrónico de los errores de los que el programa se recupera automáticamente sin pérdida que sea perceptible para el usuario. Nota: sigue siendo una buena idea que el programa rastree la velocidad a la que ocurren estos errores intermitentes e informe al usuario si la velocidad está por encima de un umbral establecido por el usuario.
Makyen
10

En esta situación, inmediatamente dejaría de enviar los correos electrónicos.

Los correos electrónicos de error deben actuar como una señal de que algo está mal y que se deben tomar medidas. Debido a que obtienes muchos de ellos, actúan como ruido estático y fácilmente perderás un correo electrónico de error realmente importante que llegó por otra razón.

Sin embargo, si recibe como 5 de estos correos electrónicos cada hora y recibir un correo electrónico como cada minuto sería algo anormal, debe crear un mecanismo que envíe algo cuando los errores / hora pasen un cierto umbral. Debido a que el correo electrónico único puede no significar mucho más, la cantidad de ellos en un período determinado (minuto / hora / día) puede significar algo más grande.

Pieter B
fuente
2

El correo electrónico no es una buena herramienta para realizar un seguimiento de los errores. Busque productos como New Relic o App Insights para registrar todos sus errores (y otra información) para que luego pueda informar o enviar alertas por correo electrónico cuando se cumplan ciertas condiciones (por ejemplo, cuando cambia de 1% de falla a> 10% de falla )

Con correos electrónicos separados para cada error, terminas ignorando los correos electrónicos y es posible que ni siquiera notes el salto del 1% al 10%. Peor aún, su proveedor de correo electrónico puede ver el gran volumen de correos electrónicos casi idénticos de una dirección y marcarlos como spam.

thelem
fuente
0

En este tipo de situaciones, intente hacer un algoritmo para hacer un registro de eventos de error y enviarlo una vez al día. Como dijo Pieter, también ponga una alerta por exceder el número de errores. Esa será una forma sistemática de gestión de aplicaciones y solución de problemas.

Nadhirsha bin shaju
fuente