Журнал событий в Windows: как его открыть и найти информацию об ошибке
Доброго дня!
Даже если вы за компьютером ничего не делаете — в процессе работы ОС Windows записывает часть данных в спец. документы (их еще называют логами или системными журналами) . Как правило, под-запись попадают различные события, например, включение/выключение ПК, возникновение ошибок, обновления и т.д.
Разумеется, в некоторых случаях эти записи могут быть очень полезными. Например, при поиске причин возникновения ошибок, синих экранов, внезапных перезагрузок и т.д. Отмечу, что если у вас установлена не официальная версия Windows — может так стать, что журналы у вас отключены.
В общем, в этой заметке покажу азы работы с журналами событий в Windows (например, как найти ошибку и ее код, что несомненно поможет в диагностике).
Работа с журналом событий (для начинающих)
Как его открыть
Этот вариант универсальный и работает во всех современных версиях ОС Windows.
- нажать сочетание кнопок Win+R — должно появиться окно «Выполнить»;
- ввести команду eventvwr и нажать OK ( примечание : также можно воспользоваться диспетчером задач (Ctrl+Shift+Esc) — нажать по меню «Файл/новая задача» и ввести ту же команду eventvwr ) ;
eventvwr — команда для вызова журнала событий
после этого у вас должно появиться окно «Просмотр событий» — обратите внимание на левую колонку, в ней как раз и содержатся всевозможные журналы Windows.
- сначала необходимо открыть панель управления и перейти в раздел «Система и безопасность» ;
Система и безопасность
далее необходимо перейти в раздел «Администрирование» ;
после кликнуть мышкой по ярлыку «Просмотр событий» .
Просмотр событий — Администрирование
Актуально для пользователей Windows 10.
1) Нажать по значку с «лупой» на панели задач, в поисковую строку написать «событий» и в результатах поиска ОС Windows предоставит вам ссылку на журнал (см. скрин ниже).
Windows 10 — события
2) Еще один способ: нажать сочетание Win+X — появится меню со ссылками на основные инструменты, среди которых будет и журнал событий.
Win+X — вызов меню
Журналы Windows
Наибольшую пользу (по крайней мере, для начинающих пользователей) представляет раздел «Журналы Windows» (выделен на скрине выше). Довольно часто при различных неполадках приходится изучать как раз его.
В нем есть 5 вкладок, из которых 3 основных: «Приложение», «Безопасность», «Система». Именно о них пару слов подробнее:
- «Приложение» — здесь собираются все ошибки (и предупреждения), которые возникают из-за работы программ. Вкладка будет полезна в тех случаях, когда у вас какое-нибудь приложение нестабильно работает;
- «Система» — в этой вкладке содержатся события, которые сгенерированы различными компонентами ОС Windows (модули, драйверы и пр.);
- «Безопасность» — события, относящиеся к безопасности системы (входы в учетную запись, раздача прав доступа папкам и файлам, и т.д.).
Как найти и просмотреть ошибки (в т.ч. критические)
Надо сказать, что Windows записывает в журналы очень много различной информации (вы в этом можете убедиться, открыв любой из них). Среди стольких записей найти нужную ошибку не так просто. И именно для этого здесь предусмотрены спец. фильтры. Ниже покажу простой пример их использования.
И так, сначала необходимо выбрать нужный журнал (например «Система») , далее кликнуть в правой колонке по инструменту «Фильтр текущего журнала» .
Система — фильтр текущего журнала / Кликабельно
После указать дату, уровень события (например, ошибки), и нажать OK.
В результате вы увидите отфильтрованный список событий. Ориентируясь по дате и времени вы можете найти именно ту ошибку, которая вас интересует. Например, в своем примере я нашел ошибку из-за которой компьютер перезагрузился (благодаря коду ошибки и подробному описанию можно найти ее решение на сайте Microsoft) .
Представлены все ошибки по дате и времени их возникновения / Кликабельно
Т.е. как видите из примера — использование журнала событий очень даже помогает в решении самых разных проблем с ПК.
Можно ли отключить журналы событий
Можно! Только нужно ли? (хотя не могу не отметить, что многие считают, что на этом можно сэкономить толику дискового пространства, плюс система более отзывчива и меньше нагрузка на жесткий диск)
Для отключения журналов событий нужно:
- открыть «службы» (для этого нажмите Win+R , введите команду services.msc и нажмите OK) ;
Открываем службы — services.msc (универсальный способ)
далее нужно найти службу «Журнал событий Windows» и открыть ее;
Службы — журналы событий
после перевести тип запуска в режим «отключена» и нажать кнопку «остановить» . Затем сохранить настройки и перезагрузить компьютер.
Блог Event Log Explorer
Ключевой элемент анализа журналов событий — это фильтрация событий. Функции фильтрации событий, пожалуй, являются самыми востребованными в любой программе, предназначенной для анализа журналов событий. Установить фильтр для большинства полей (свойств) события достаточно просто. Как правило, все программы для работы с журналами событий позволяют фильтровать события по времени, источнику, типу события, коду события более или менее понятным образом. Описания событий часто содержат довольно полезные подробности. И иногда вам может понадобиться отфильтровать события по содержимому описания события. Для примера рассмотрим задачу — отфильтровать события входа в систему от пользователей, подключившихся по RDP-протоколу.
Мы знаем что события входа в систему хранятся в журнале Безопасность и имеют коды 4624 и 4625 (успешные и неудачные соответственно). И сейчас мы рассмотрим как интерпретировать коды входа в систему, код входа для RDP — это 10.
Итак, нам необходимо отфильтровать события в журнале Безопасность с кодами (Event ID) = 4624 или 4625 и кодом входа = 10.
Хотя приложение Просмотр событий Windows не предоставляет пользовательский интерфейс для фильтрации событий по описаниям событий, вы можете сделать запрос используя структурированные XML-запросы. Эта возможность появилась в Windows Vista/2008 Server. Структурированные XML-запросы это специальный язык, основанный на синтаксисе XPath 1.0, предназначенный для запроса событий из журналов событий. Вы можете найти информацию о структурированных XML-запросах и выражениях XPath на странице https://msdn.microsoft.com/en-us/library/windows/desktop/dd996910(v=vs.85).aspx
Так будет выглядеть XML фильтр для нашей задачи:
Используя возможности запросов XML, вы можете фильтровать события по любому критерию. Наш Event Log Explorer «понимает» структурированные XML запросы также хорошо, как и Просмотр событий. Но с Event Log Explorer нет необходимости использовать полные XML-запросы. Event Log Explorer позволяет использовать XPath выражения, типа такого:
*[System[(EventID=4624 or EventID=4625)]] and
*[EventData[Data[@Name=’LogonType’] and Data=10]]
Несмотря на широкие возможности фильтрации с помощью XML-запросов, их не очень просто использовать, особенно если вы не составляете XML-запросы постоянно.
Далее будет показано как фильтрацию событий с помощью Event Log Explorer.
Выберите Вид (View) -> Фильтр (Filter) в главном меню окна Event Log Explorer чтобы открыть диалог «Фильтр».
Введите 4624,4625 в поле ввода Идентификаторы событий (Event IDs) потому что нам нужны только события входа в систему.
Event Log Explorer предлагает 2 способа фильтрации событий по описаниям.
Фильтрация событий по тексту описания
Достаточно написать любой текст в поле ввода “Текст в описании” и Event Log Explorer покажет все события, которые содержат этот текст в описании. Попробуйте ввести скопировать из события и вставить текст типа:
И это может сработать. Правда, этот метод не всегда надежен. Не всегда можно быть уверенным в количестве пробелов или табов в описании, кроме того знак табулюции нельзя ввести с клавиатуры (в примере мы просто скопировали из описания и вставили, и тем более не стоит копировать из этой статьи). Такой простой способ можно использовать для простых фильтров или когда работу нужно сделать быстро и один раз. Для регулярной работы, для формирования отчетов лучше воспользоваться более надежным способом — регулярными выражениями
Используя то же самое поле ввода «Текст в описании» вы можете ввести критерий в виде регулярного выражения и включить опцию «Рег. Выр.» справа от поля ввода. В этом случае вся мощь регулярных выражений придет к вам на помощь — Event Log Explorer будет искать описания событий, удовлетворяющие введенному регулярному выражению. Для нашего примера ваше регулярное выражение будет выглядеть так:
Возможно, вы подумаете, что этот способ не намного лучше чем использование структурированных XML-запросов. Вместо изучения синтаксиса XPath придется учить синтаксис регулярных выражений.
Для многих задач нет лучшей альтернативы, чем фильтры с регулярными выражениями, но для задач типа рассматриваемой (показать события входа по RDP) Event Log Explorer предлагает еще один простой способ.
Фильтрация событий по параметрам в описаниях
Event Log Explorer дает возможность фильтровать жырнал событий Безопасность по параметрам описаний. Вам нужно сказать программе:
Logon type equals 10
Для простого ввода условия, мы рекомендуем выделить в списке событие, содержащее интересующие нас параметры.
Далее открываем диалог «Фильтр» и создаем новое условие «Фильтр по параметрам описания»:
Такой способ очень сильно экономит время при анализе журналов событий безопасности.
Учтите, что этот способ работает только для журналов событий Безопасность потому что журналы безопасности содержат хорошо структурированные описания. При анализе других журналов приходится использовать регулярные выражения или XPath-фильтры.
Фильтрация событий в журналах Windows по имени пользователя
В Windows Server 2003 / Windows XP в журнале событий системы можно было с легкостью отфильтровать события по учетной записи конкретного пользователя, указав в фильтре в поле User фильтра журнала имя нужной учетной записи. Но в Windows Server 2008 / Windows 7 и выше этот простой способ найти события, связанные с конкретным пользователем, не работает, хотя в настройках фильтра само поле User имеется (видимо осталось по-старинке).
В Windows Server 2008 в стандартном виде журнала событий отсутствует поле User. Попробуем добавить его с помощью меню View -> Add/Remove Columns.
Теперь в представлении журнала появился столбец User, но имени пользователя, инициатора события в этом столбце нет, вместо этого отображается N/A. Иформация об учетной записи теперь содержится внутри описания самого события ( в значениях атрибутов Security ID и Account Name в данном примере). Как же теперь можно отфильтровать события в журнале?
Для фильтрации событий по имени учетной записи пользователя ( и любым другим атрибутам событий), в Windows Server 2008 (и выше) можно воспользоваться возможность ручной модификации XML запросов (XPath) на выборку.
Итак, откройте нужный журнал в Event View (в нашем примере это журнал Security) и в контекстном меню выберите пункт Filter Current Log….
Перейдите на вкладку XML и отметьте чекбокс Edit query manually.
Скопируйте следующий код, позволяющий выбрать из журнала все события по конкретному пользователю (замените username на нужную учетку).
Сохраняем изменения в фильтре и смотрим на журнал. В нем должны остаться события, относящиеся к данной учетке.
Если, к примеру, нужно дополнительно отфильтровать события по пользователю и Event ID 4624 (Удачный вход — An account was successfully logged on) и 4625 (неудачный вход — An account failed to log on.), фильтр XPath может выглядеть так: