W jakich specyficzna sytuacja jest ok (lub nawet zalecane), aby zaprezentować użytkownikom końcowym z StackTrace ich interfejsu użytkownika w systemie produkcyjnym.Kiedy * NIE * pokażemy StackTraces w systemach produkcyjnych
Istnieje wiele stron internetowych i artykułów SO, w których ludzie pytają, czy powinni pokazywać StackTraces użytkownikowi końcowemu. Nic dziwnego, że odpowiedzi brzmią bardzo dobrze: "Nie!".
Na przykład:
- 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
Jednak Niedawno miałem rozmowę z innym deweloperem, gdzie spędziłem sporo czasu ustalanie, dlaczego stacktraces shou Nie przekazuje się użytkownikowi za pośrednictwem interfejsu użytkownika. Ta dyskusja kazała mi wrócić i ponownie odwiedzić jednego z moich podstawowych (absolutnych) najemców - użytkownik nigdy nie zobaczy surowego StackTrace w produkcji.
Nie mogłem znaleźć pojedynczego powodu przekonujące. Jednak jestem pewien, że istnieje poprawny przypadek użycia i chciałbym go albo zrozumieć, albo czuć się komfortowo, kontynuując trzymanie się mojego najemcy absolutnej .