Jestem programistą w firmie, której produkty są wdrażane za granicą. Gdy przychodzi zespół wsparcia z pytaniem o definicję problemu, moimi jedynymi narzędziami do diagnozy są moje pliki dziennika i kopia bazy danych klienta. Korzystając z bazy danych i mojego środowiska programistycznego, mam możliwość odtworzenia błędnego przypadku, ponieważ loguję przychodzące dane do mojego modułu i powiązanych działań. Jeśli mogę odtworzyć błąd za pomocą zebranych danych, mogę to naprawić za pomocą debugowania. Gdybym nie miał plików dziennika, musiałbym polegać na opisie klienta lub zespołu pomocy technicznej na temat tego, co dzieje się w danym przypadku (co ma dużą szansę na wprowadzenie w błąd).
Po drugie, rejestrowanie daje mi możliwość wykrycia wąskich gardeł mojego modułu we wdrożonej witrynie, ponieważ rejestruję datę i godzinę niektórych działań, a następnie mogę sprawdzić, które działanie zużywa ile czasu.
Ponadto załóżmy, że nasze rozwiązanie składa się z 6 modułów i widzę dzienniki błędów w moich plikach dziennika dotyczące przekroczeń limitu czasu bazy danych. Jeśli te błędy zostaną zarejestrowane również w 5 innych modułach, prawdopodobieństwo, że jest to problem związany z serwerem SQL, wzrasta. Jeśli jest to rejestrowane tylko w moim module, prawdopodobieństwo, że moje zapytania są błędne, rośnie. Myślę, że tego rodzaju rzeczy są przydatnymi wskaźnikami.
To, jakie dane widzę w moich plikach dziennika, zależy od konfiguracji poziomu dziennika. Jeśli jest to nowy produkt, ustawiamy poziom dziennika na „Wszystkie”, aby zebrać jak najwięcej danych. Ale kiedy ulepszamy produkt, możemy chcieć utrzymać poziom dziennika na poziomie „Błąd”, aby rejestrować tylko błąd, ale nie dzienniki poziomu informacji itp.