Introducción
Si se produce un error en un sitio web o sistema, por supuesto, es útil registrarlo y mostrar al usuario un mensaje cortés con un código de referencia para el error.
Y si tiene muchos sistemas, no desea que esta información se distribuya: es bueno tener un solo lugar centralizado para ello.
En el nivel más simple, todo lo que se necesita es una identificación incremental y un volcado serializado de los detalles del error. (Y posiblemente el "lugar centralizado" sea una bandeja de entrada de correo electrónico).
En el otro extremo del espectro, quizás haya una base de datos completamente normalizada que también le permite presionar un botón y ver un gráfico de errores por día, o identificar cuál es el tipo de error más común en el sistema X, si el servidor A tiene más base de datos errores de conexión que el servidor B, y así sucesivamente.
A lo que me refiero aquí es registrar errores / excepciones a nivel de código por un sistema remoto, no un seguimiento de problemas "basado en humanos", como se hace con Jira, Trac, etc.
Preguntas
Estoy buscando ideas de desarrolladores que han usado este tipo de sistema, específicamente con respecto a:
- ¿Cuáles son las características esenciales que no podría prescindir?
- ¿De qué sirve tener funciones que realmente le ahorren tiempo?
- ¿Qué características pueden parecer una buena idea, pero en realidad no son tan útiles?
Por ejemplo, yo diría que una función "mostrar duplicados" que identifica la ocurrencia múltiple de un error (sin preocuparse por los detalles "sin importancia" que pueden diferir) es bastante esencial.
Un botón para "crear un problema en [Jira / etc] para este error" suena como un buen ahorro de tiempo.
Solo para repetir, lo que busco es experiencias prácticas de personas que han usado tales sistemas, preferiblemente respaldados por qué una característica es increíble / terrible.
(Si va a teorizar de todos modos, al menos marque su respuesta como tal).