Sotto quale specifica situazione è ok (o anche consigliato) per presentare agli utenti finali con uno StackTrace alla loro interfaccia utente su un sistema di produzione.Quando * a * mostriamo stacktraces sui sistemi di produzione
Ci sono un gran numero di siti Web e articoli SO in cui la gente chiede se devono mostrare StackTraces a un utente finale. Non sorprende che le risposte siano un clamoroso "No!".
Ad esempio:
- Java: what information in error stack trace do we typically not wish to show users?
- java : Using printStackTrace in Production Environment
- Should I Print the Exception Stack Trace?
- When to log a stacktrace for a caught exception
Tuttavia, di recente ho avuto una conversazione con un altro sviluppatore dove ho trascorso un bel po 'di tempo posturing perché lo stacktraces shou Non posso essere passato all'utente tramite l'interfaccia utente. Questa discussione mi ha fatto tornare indietro e rivisitare uno dei miei inquilini fondamentali (assoluti) - l'utente non deve mai vedere uno StackTrace grezzo in produzione.
Non sono riuscito a trovare un solo motivo convincente. Tuttavia, sono sicuro che ci sia un caso d'uso valido, e mi piacerebbe o capirlo, o sentirmi a mio agio continuando a tenere il mio assoluto titolare.