Это отличный вопрос.
Первая причина - почему бы и нет? Если вы используете каркас журналирования, вы сможете воспользоваться преимуществами удобства использования уже упакованного.
Вторая причина заключается в том, что ведение журнала неуловимо. Различные потоки, сеансы, классы и экземпляры объектов могут вступать в игру при ведении журнала, и вам не нужно разбираться с этой проблемой на лету.
Третья причина в том, что вы можете найти узкое место в производительности вашего кода. Выяснение того, что ваш код работает медленно, потому что вы записываете в файл без буферизации или на жестком диске не хватает места на диске, потому что регистратор не переворачивает и не сжимает старые файлы, что может быть неприятно.
Четвертая причина заключается в том, что вы можете добавить в системный журнал или записать в базу данных, или в сокет, или в другие файлы. Фреймворки имеют встроенную функциональность.
Но на самом деле первый ответ самый лучший; писать свои собственные очень мало пользы и целый ряд недостатков.