Зачем нужны логи

Автор: manager Вторник, Март 18th, 2008 Нет комментариев

Рубрика: Интернет

Не секрет, что иногда :) в программах происходят ошибки. Причем, довольно часто программа ограничивается сообщением о том, что ошибка произошла, никак не детализируя какая и почему. Или, что еще хуже, программа делает вид, что все в порядке, а вот результат ее работы оказывается неушетильным… А бывает и по-другому: программа работает нормально, но долго, а результат ее работы требует от вас каких-то действий при наступлении какого-то события (например, проверка вашего диска антивирусом, который замирает при обнаружении такового и тупо ждет пока вы нажмете на кнопочку) — в этом случае приходится сидеть и тупо пялится в монитор, ожидая не произойдет ли что-нибудь… Во всех этих случаях вашу жизнь может сильно облегчить такая замечательная вещь, как логи.

Логи — это не что-то мистическое, а всего-лишь файл с какими-то записями сделанными программой. Большинство более-менее серьезных программ позволяют пользователю включать и отключать запись лога (или, как его еще называют, протокола) своей работы. Если же программа, которой вы пользуетесь не имеет подобной функции, то во многих случаях может помочь какая-то внешняя программ, отслеживающая те или иные события.

Что же в логах такого замечательного? Дело в том, что они предназначены как раз для тех случаев, когда вам надо проанализировать результаты работы чего-то или найти причину неполадок. Программа, ведущая лог, пишет данные в файл при выполнении каких-то действий или при наступлении какого-то события, причем, данные эти сохраняются на диске даже в случае сбоя. Подобные записи очень часто позволяют выявить причину ошибки, а, как известно любому компьютерщику, выявленная причина — это 80 процентов решения…

Попробуем рассмотреть несколько примеров. По роду своей деятельности мне приходится скачивать из Интернета довольно много файлов. И заметил я, что очень часто файлы, скачанные с определенных серверов, например, с chat.ru оказываются поврежденными. Качал я их GetRight-ом, а у него есть такая функия — Show transfer details — которая представляет из себя протокол общения downloader-а с сервером. И как только я в него заглянул сразу стало видно, что эти сервера часто не передают HTTP заголовок, а сразу начинают передавать файл. С одной стороны, в этом ничего страшного, а вот с другой — если вдруг по каким-то причинам связь прервется на середине, то GetRight посчитает, что файл уже скачался (т.к. его длина должна передаваться в заголовке) и архив окажется испорченным. Отсюда вывод — если я начинаю скачивать файл и вижу, что программа начала его качать, но не показывает конечный размер, значит заголовок она не получила и лучше скачивание прервать и начать заново… Кстати, показывать протокол общения с сервером может не только GetRight, но и большинство других download-менеджеров.

Помогает он и во многих других случаях. Например, если программа долго-долго «долбится» и никак не может начать скачивание, то очень часто одного взгляда на лог достаточно, чтобы увидеть причину — к серверу уже подключилось слишком много клиентов, или он не отвечает (тут, правда, может потребоваться отдельное разбирательство), или к нему не найти маршрут… Другой полезный лог, который умеет вести GetRight — это список скачанных файлов и адресов, откуда он их скачал. Опять же бывает полезно, если хочется «вспомнить», что это за бяка на диске валяется и зачем. Кстати, для чтения этого лога удобно пользоваться утилитой LogRight…

Или же рассмотрим для примера, например, другой пример :) ) Вы установили программу, запускаете, а она говорит: «file not found!» и вываливается с ошибкой. Понятно, что она чего-то не может найти, а вот чего? Тут очень хорошо пригодится такая утилитка. как Filemon. Она занимается тем, что отслеживает все обращения к файловой системе. Запустив FileMon, а потом свою «сбойную» программу вы увидите какой именно файл она хочет прочитать и придумать что с этим делать… Заодно уж стоит воспользоваться и Regmon-ом, который тоже мониторит, но не файловую систему, а реестр.

Помимо возможности узнать «на более низком уровне» чем именно занимается программа, логи несут и еще одну полезную нагрузку — протоколируют события происходящие в системе. Именно за это их любят системные администраторы — в случае возникновения каких-то проблем всегда можно «поднять логи» и посмотреть что их (проблемы) вызвало. Кроме того, логи дают возможность «пакетной обработки информации», например, вместо того чтобы пересчитывать статистику посещений веб-сайта каждый раз, когда на него зашел новый посетитель, можно периодически обрабатывать логи сервера, что изрядно экономит загрузку компьютера.

Эта же функция может пригодиться и дома. Возьмем, скажем, антивирус. Если при проверке диска он находит зараженный файл, то, как правило, останавливается и требует у вас совета, что с этим файлом делать (многие пользователи отключают автоматическое лечение, т.к. антивирусы часто ругаются на «чистые» программы). А если дисков и файлов у вас много? Тут очень удобно бывает указать антивирусу, чтобы он только сообщал о подозрительных файлах, причем не выкидывал сообщение, а именно писал в лог. А потом, подойдя утром к компьютеру вам останется только просмотреть этот лог и решить судьбу подозрительных файлов.

Кстати, Windows тоже умеет писать лог своей загрузки, что весьма помогает при поиске причин сбоев или «тормозов на старте»… Достаточно при загрузке компьютера нажать F8 или удерживать Ctrl, а потом в предложенном меню выбрать «logged (\bootlog.txt)». После загрузки Windows у вас в корне диска C: обнаружится файл bootlog.txt (кстати, смотреть его удобно с помощью программы Boot Log Analyser), правда, для того, чтобы в нем разобраться вам понадобятся ощутимые знания компьютера…

Источник: www.diskovod.ru

Оставить комментарий

Чтобы оставлять комментарии Вы должны быть авторизованы.

Похожие посты