Файл журнала
Эта статья или раздел нуждается в переработке. |
Файл журнала (протокол, журнал; англ. log) — файл с записями о событиях в хронологическом порядке, простейшее средство обеспечения журналирования. Различают регистрацию внешних событий и протоколирование работы самой программы — источника записей (хотя часто всё записывается в единый файл).
Регистрация внешних событий
[править | править код]Журналы сервера — специальные файлы, в которых протоколируются определённые действия пользователя или программы на сервере. Например, в журналы веб-сервера записывается информация, откуда пришёл тот либо иной посетитель, когда и сколько времени он провел на сайте, что там смотрел и скачивал, какой у него браузер и какой IP-адрес у его компьютера. Каждая запись в лог-файле соответствует определённому хиту, так как сервер может фиксировать именно запрос к одному из элементов сайта.
Проанализировав файлы регистрации, можно получить сводные данные активности пользователей, изучить закономерности поведения групп пользователей и оценить эффективность рекламной кампании. Часто используемые данные (статистика) могут записываться сразу в базу данных, а не только в файл регистрации.
Протоколирование работы программы
[править | править код]Ведение протокола (протоколирование) — хронологическая запись с различной (настраиваемой) степенью детализации сведений о происходящих в системе событиях (ошибки, предупреждения, сообщения), обычно в файл. В абсолютном большинстве современных программ используются текстовые файлы протоколов (одно событие — одна строка), они легко генерируются программой и анализируются человеком. Как исключение, в интерактивных утилитах (командной строки) сообщения о событиях выводятся прямо на экран пользователю, однако и этот вывод при необходимости можно перенаправить в файл.
Исследование содержимого файла регистрации ошибок после возникновения неполадок часто позволяет понять их причины.
Наиболее подходящей парадигмой для решения задач ведения файлов регистрации считается аспектно-ориентированное программирование.
Ротация журналов
[править | править код]При активном использовании сервера пользователями или очень подробном журналировании или просто продолжительном времени работы программного обеспечения, в журнале становится очень много записей, что приводит к следующим затруднениям:
- файл регистрации потребляет значительные ресурсы хранения,
- большой файл регистрации становится тяжёлым для чтения и анализа.
Таким образом бывает необходима ротация журналов — усечение текущего файла регистрации, архивирование или удаление предыдущих накопленных данных:
- по временному промежутку (каждый час, каждый день, за последние сутки/неделю) в новый файл.
- по достижении определённого объёма или количества записей.
- циклический журнал — методика хранения какого-то определённого объёма или количества записей, при этом новые записи удаляют самые старые записи, на базе такой структуры как кольцевой буфер.
- Каждый новый запуск экземпляра ПО создает новый файл лога или переименовывает/откладывает предыдущий файл лога.
Если автоматическая ротация журнала не предусмотрена при разработке программного обеспечения, то эта задача ложится на системных администраторов, которые автоматизируют её с помощью планировщиков, или специализированных утилит, как например logrotate.
Журналы Windows
[править | править код]Журналы Windows (не путать с приложением Windows Journal для заметок от руки) протоколируют работу как самой системы так и отдельных ее компонент.[1]
В актуальных версиях операционной системы Windows (7-11) существует несколько независимых систем журналирования событий. Так, некоторые компоненты операционной системы (например, сетевой экран) записывает журналы традиционным способом - в виде текстовых файлов с расширением "log", как правило, расположенных по адресу "%SystemRoot%\System32\LogFiles\" и "%SystemRoot%" (здесь и ниже пути указаны с использованием переменной среды %SystemRoot%, как правило, идентичной пути "C:\windows").
Другие (основные) системные журналы ведутся в формате ".evtx". Как правило, они расположены по адресу ""%SystemRoot%\System32\winevt\LogFiles\".
Для работы с ними в системе имеется специальный апплет "Просмотр событий" ("eventvwr.msc") , как правило, доступный через классическую панель управления, либо в подуровне "Администрирование" ("Панель управления\Все элементы панели управления\Администрирование"). Также в системной утилите PowerShell имеется множество инструментов для работы с логами в указанном формате[2].
См. также
[править | править код]Примечания
[править | править код]- ↑ Karl-Bridge-Microsoft. Event Logging (Event Logging) - Win32 apps (амер. англ.). learn.microsoft.com (7 января 2021). Дата обращения: 8 июня 2023. Архивировано 9 июня 2023 года.
- ↑ Вертим логи как хотим ― анализ журналов в системах Windows . Хабр (20 марта 2018). Дата обращения: 8 июня 2023. Архивировано 9 июня 2023 года.
Для улучшения этой статьи желательно:
|