Event log watch что это
Установка и использование лог-анализатора Logwatch
Приложения создают так называемые лог-файлы, чтобы системный администратор мог отслеживать их действия в любой момент времени. Но содержимое таких файлов не является простым текстом, а потому их не так просто читать, особенно если сервер загружен задачами.
Как правило, лог-файлы используются при потере данных или возникновении сбоев или отказов, так как в них находятся данные, которые могут помочь устранить ошибку. В такой ситуации крайне важно иметь возможность быстро прочитать (обработать) информацию о случившихся событиях и проанализировать их.
В данном руководстве речь пойдёт о Logwatch – очень производительном лог-анализаторе, который существенно облегчит работу администратора выделенной системы.
Лог-файлы
Эти генерируемые приложениями файлы играют решающую роль в отслеживании произошедших и происходящих событий в системе и их использовании для полного или частичного восстановления данных (из логов транзакций), анализа производительности (по серверным логам) или же для тонкой настройки сервера (например, с помощью логов доступа).
Проще говоря, лог-файлы (или журналы) содержат информацию о действиях и событиях, произошедших в заданный период времени.
Хороший лог-файл должен содержать наиболее подробную информацию, поскольку невозможно предсказать, какие именно данные станут полезными в тот или иной момент. Именно потому лог-файлы обычно довольно объёмны и в большинстве случаев содержат огромное количество дублирующихся данных и избыточных записей, которые необходимо тщательно проанализировать и отфильтровать, чтобы понять.
Именно для этого и существует приложение Logwatch.
Краткий обзор Logwatch
Управление логами – это область системного администрирования, охватывающая поиск, ротацию и сохранение логов и предоставление отчётов.
Logwatch – это приложение, которое упрощает управление системными логами путём ежедневного анализа и составления короткого отчёта о деятельности, осуществляемой на данном компьютере.
Отчёты, составляемые Logwatch, категоризированы по сервисам (т.е. приложениям), запущенным в системе; эти отчёты можно настраивать при помощи довольно простого конфигурационного файла, включая и исключая отдельные сервисы. Более того, Logwatch позволяет создавать пользовательские скрипты для анализа логов.
Установка Logwatch
Примечание: В целом, Logwatch – безвредное приложение, которое не должно помешать работе текущих сервисов или повлиять на нагрузку. Но всё же рекомендуется сначала протестировать его на новой системе и создать резервные копии.
Установка Logwatch в CentOS / RHEL
Logwatch очень просто установить в системы, основанные на RHEL (например, CentOS). Поскольку данное приложение состоит из ряда различных Perl-скриптов, для его работы понадобятся некоторые зависимости. ПРи установке Logwatch через менеджер пакетов yum все эти зависимости будут установлены автоматически. Кроме того, при установке Logwatch будет загружена программа mailx (если она не была установлена ранее).
Итак, чтобы установить Logwatch на CentOS / RHEL, запустите следующую команду:
Установка Logwatch в Ubuntu / Debian
Процесс установки Logwatch в системы на основе Debian (например, в Ubuntu) так же прост, как и в RHEL и выполняется при помощи стандартного менеджера пакетов apt.
Чтобы установить Logwatch на Ubuntu / Debian, запустите:
Общие настройки Logwatch
Стандартный конфигурационный файл Logwatch находится в:
Откройте этот файл при помощи текстового редактора nano:
Это откроет длинный список переменных, которые используются приложением при каждом запуске (как автоматическом, так и ручном). Эти стандартные настройки нужно немного отредактировать.
Все сервисы (приложения), отслеживаемые и анализируемые Logwatch, перечислены в этом файле (подробнее – в подразделе Сервисы). Устанавливая или удаляя приложения с сервера, вы можете редактировать настройки, чтобы получать отчёт о работе всех или некоторых из них.
В данном разделе речь пойдёт о важных опциях, которые необходимо настроить.
Примечание: Во время редактирования файла необходимо использовать клавиши со стрелками для перехода с одной строки на другую. Внеся все необходимые изменения, нажмите CTRL+X, чтобы закрыть и сохранить файл, и Y для подтверждения. все изменения будут автоматически загружены при следующем запуске logwatch.
1: Электронный адрес получателя
Примечание: Замените root своим значением.
Эта директива задаёт электронный адрес, на который нужно отправлять отчёты, например:
2: Электронный адрес отправителя
Примечание: Замените Logwatch своими данными.
Эта директива задаёт электронный адрес, с которого приложение Logwatch сможет слать отчёты. Например:
3: Диапазон отчётов
Данная директива использует три значения: All (все доступные отчёты), Today (отчёты за сегодня) и Yesterday (все отчёты за вчерашний день), например:
4: Настройка подробности отчётов
Эта директива позволят настроить подробность отчёта при помощи трёх доступных значений: Low, Medium и High; например:
5: Сервисы
По умолчанию Logwatch охватывает довольно широкий диапазон сервисов. Чтобы просмотреть полный список отслеживаемых сервисов, запросите содержимое файла scripts/services, расположенного в /usr/share/logwatch/.
В отчётах могут быть упомянуты все или только определённые сервисы. Чтобы получать отчёт по всем сервисам, используйте:
Чтобы получать отчёт только по конкретным сервисам, перечислите все необходимые сервисы, используя формат:
Service = sendmail
Service = http
Service = identd
Service = sshd2
Service = sudo
..
6: Отключение ежедневных отчётов
Если вы не нуждаетесь в ежедневных отчётах по мониторингу, раскомментируйте следующую строку, удалив символ # в начале:
Теперь приложение Logwatch настроено и готово к работе. Внеся все эти изменения в стандартные настройки, вы будете автоматически получать основанные на данных логов отчеты о событиях на сервере.
Чтобы узнать о работе Logwatch больше и научиться создавать пользовательские скрипты и отчёты, обратитесь к полной документации приложения.
Запуск Logwatch вручную
В случае необходимости можно запускать Logwatch вручную через командную строку. В документации упомянуты следующие опции:
logwatch [—detail level ] [—logfile log-file-group ] [—service service-name ] [—print] [—mailto address ] [—archives] [—range range ] [—debug level ] [—save file-name ] [—logdir directory ] [—hostname hostname ] [—splithosts] [—multiemail] [—output output-
type ] [—numeric] [—no-oldfiles-log] [—version] [—help|—usage]
При запуске без опций Logwatch будет ориентироваться на конфигурационный файл.
Например:
$ logwatch —detail Low —mailto email@address —service http —range today
Event Log Watcher Класс
Определение
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Позволяет подписаться на входящие события. Каждый раз при публикации требуемого события в журнале событий вызывается событие EventRecordWritten и выполняется метод, обрабатывающий данное событие.
Примеры
Комментарии
Экземпляры этого класса создаются из EventLogQuery объектов, которые указывают запрос для подписки на события. Событие EventRecordWritten вызывается при регистрации события, соответствующего критериям, выраженным в запросе.
Конструкторы
Инициализирует новый экземпляр класса EventLogWatcher, указывая запрос событий.
Инициализирует новый экземпляр класса EventLogWatcher, указывая запрос событий и закладку, используемую в качестве начальной позиции для запроса.
Инициализирует новый экземпляр класса EventLogWatcher, указывая запрос события, закладку, используемую в качестве начальной позиции для запроса и логическое значение, определяющее, следует ли считывать события, уже зарегистрированные в журнале событий.
Инициализирует новый экземпляр класса EventLogWatcher, указывая имя или путь к журналу событий.
Свойства
Получает или задает значение, указывающее, следует ли этому объекту начать доставку событий делегату событий.
Методы
Освобождает все ресурсы, используемые этим объектом.
Освобождает неуправляемые ресурсы, используемые этим объектом. Кроме того, возможно освобождение управляемых ресурсов.
Определяет, равен ли указанный объект текущему объекту.
Служит хэш-функцией по умолчанию.
Возвращает объект Type для текущего экземпляра.
Создает неполную копию текущего объекта Object.
Возвращает строку, представляющую текущий объект.
События
Позволяет задать делегат (метод обработчика событий), который вызывается каждый раз при публикации события, соответствующего критериям, указанным в запросе события для данного объекта.
Ключ EventLog
Журнал событий содержит следующие стандартные журналы, а также пользовательские журналы.
Журнал | Описание |
---|---|
Приложение | Содержит события, регистрируемые приложениями. Например, приложение базы данных может записать ошибку файла. Разработчик приложения решает, какие события следует записывать. |
Безопасность | Содержит такие события, как допустимые и недопустимые попытки входа в систему, а также события, связанные с использованием ресурсов, такие как создание, открытие или удаление файлов или других объектов. Администратор может начать аудит для записи событий в журнал безопасности. |
Система | Содержит события, регистрируемые системными компонентами, например сбой драйвера или другого системного компонента для загрузки во время запуска. |
CustomLog | Содержит события, регистрируемые приложениями, которые создают пользовательский журнал. Использование пользовательского журнала позволяет приложению управлять размером журнала или присоединять списки управления доступом в целях безопасности, не затрагивая другие приложения. |
Структура раздела журнала событий выглядит следующим образом:
Каждый журнал может содержать следующие значения реестра.