Przychodzą mi do głowy dwa ważne powody:
Po pierwsze, bazy danych są wolniejsze niż pliki tekstowe, jeśli chodzi o proste dodawanie informacji do pliku. Z bazą danych musisz nawiązać połączenie, przesyłać dane przez sieć, przechowywać je w indeksowanej strukturze i tak dalej. W przypadku pliku wystarczy zapisać błąd na dysku lokalnym.
Po drugie, czasami rzeczy, które chcesz rejestrować, odnoszą się do uszkodzonej bazy danych. Jeśli dysk lokalny jest uszkodzony, masz większe problemy niż próba wygenerowania plików dziennika. Ale możesz rejestrować awarie bazy danych nawet wtedy, gdy wszystko inne działa.
To powiedziawszy, jest wiele sytuacji, w których informacje, które chcę rejestrować, są istotne tylko wtedy, gdy aplikacja działa poprawnie i gdy mam już połączenie z bazą danych. W takich przypadkach loguję się bezpośrednio do MySQL.