Я розробник у компанії, продукція якої розгорнута за кордоном. Коли служба підтримки запитує про визначення проблеми, єдиним моїм інструментом для діагностики є мої файли журналів та копія бази даних клієнта. Використовуючи базу даних та моє середовище розробки, я маю можливість відтворити помилковий випадок, оскільки я реєструю вхідні дані у свій модуль та пов'язані з цим дії. Якщо я можу відтворити помилку за допомогою зібраних даних, я можу виправити її налагодженням. Якби у мене не було файлів журналів, я повинен був би залежати від опису замовника або групи підтримки, що відбувається в такому випадку (що має великі шанси ввести в оману).
По-друге, ведення журналу дає мені можливість виявити вузькі місця мого модуля на розгорнутому сайті, оскільки я реєструю дату та час певних дій, і тоді я можу ознайомитись із тим, яка дія вимагає скільки часу.
На додаток до цього, припустимо, наше рішення складається з 6 модулів, і я бачу журнали помилок у своїх файлах журналів про час очікування бази даних. Якщо ці помилки також входять у 5 інших модулів, збільшується ймовірність того, що це проблема, пов’язана з сервером SQL. Якщо це записується лише в моєму модулі, то ймовірність того, що мої запити баггі, збільшується. Я думаю, що такі речі є корисними показниками.
Від того, які дані я бачу в своїх журнальних файлах, залежить конфігурація рівня журналу. Якщо це новий продукт, ми встановлюємо рівень журналу на "Усі", щоб зібрати якомога більше даних. Але коли ми вдосконалюємо продукт, ми можемо вважати за краще тримати рівень журналу на "Помилка", щоб записувати лише помилку, але не журнали рівня інформації тощо.