Wprowadzenie
Jeśli błąd wystąpi w witrynie internetowej lub systemie, warto go oczywiście zarejestrować i wyświetlić użytkownikowi uprzejmy komunikat z kodem referencyjnym błędu.
A jeśli masz wiele systemów, nie chcesz, aby te informacje były rozsypane - dobrze jest mieć jedno scentralizowane miejsce dla nich.
Na najprostszym poziomie wszystko, czego potrzeba, to rosnący identyfikator i zserializowany zrzut szczegółów błędu. (I być może „scentralizowane miejsce” to skrzynka odbiorcza e-mail.)
Na drugim końcu spektrum znajduje się być może w pełni znormalizowana baza danych, która umożliwia także naciśnięcie przycisku i wyświetlenie wykresu błędów na dzień lub określenie, jaki jest najczęstszy rodzaj błędu w systemie X, czy serwer A ma więcej baz danych błędy połączenia niż serwer B i tak dalej.
Odnoszę się tutaj do rejestrowania błędów / wyjątków na poziomie kodu przez zdalny system - a nie śledzenia problemów „na podstawie człowieka”, takich jak Jira, Trac itp.
pytania
Szukam uwag od programistów, którzy korzystali z tego typu systemu, w szczególności na temat:
- Jakie są podstawowe funkcje, bez których nie można się obejść?
- Jakie zalety mają funkcje, które naprawdę oszczędzają Twój czas?
- Jakie funkcje mogą wydawać się dobrym pomysłem, ale w rzeczywistości nie są tak przydatne?
Na przykład powiedziałbym, że funkcja „pokaż duplikaty”, która identyfikuje wielokrotne wystąpienie błędu (nie martwiąc się o „nieistotne” szczegóły, które mogą się różnić) jest bardzo istotna.
Przycisk „stwórz problem w [Jira / etc] dla tego błędu” brzmi jak dobra oszczędność czasu.
Chciałbym tylko powtórzyć, to, czego szukam, to praktyczne doświadczenia ludzi, którzy korzystali z takich systemów, najlepiej poparte tym, dlaczego funkcja jest niesamowita / okropna.
(Jeśli mimo to zamierzasz teoretykować, przynajmniej zaznacz swoją odpowiedź jako taką).