Анализ журналов событий windows

Пора поговорить про удобную работу с логами, тем более что в Windows есть масса неочевидных инструментов для этого. Например, Log Parser, который порой просто незаменим.

В статье не будет про серьезные вещи вроде Splunk и ELK (Elasticsearch + Logstash + Kibana). Сфокусируемся на простом и бесплатном.

Журналы и командная строка

До появления PowerShell можно было использовать такие утилиты cmd как find и findstr. Они вполне подходят для простой автоматизации. Например, когда мне понадобилось отлавливать ошибки в обмене 1С 7.7 я использовал в скриптах обмена простую команду:

findstr "Fail" *.log >> fail.txt

Она позволяла получить в файле fail.txt все ошибки обмена. Но если было нужно что-то большее, вроде получения информации о предшествующей ошибке, то приходилось создавать монструозные скрипты с циклами for или использовать сторонние утилиты. По счастью, с появлением PowerShell эти проблемы ушли в прошлое.

Основным инструментом для работы с текстовыми журналами является командлет Get-Content, предназначенный для отображения содержимого текстового файла. Например, для вывода журнала сервиса WSUS в консоль можно использовать команду:

Get-Content -Path 'C:\Program Files\Update Services\LogFiles\SoftwareDistribution.log' | Out-Host -Paging

Для вывода последних строк журнала существует параметр Tail, который в паре с параметром Wait позволит смотреть за журналом в режиме онлайн. Посмотрим, как идет обновление системы командой:

>Get-Content -Path "C:\Windows\WindowsUpdate.log" -Tail 5 -Wait

Смотрим за ходом обновления Windows.

Если же нам нужно отловить в журналах определенные события, то поможет командлет Select-String, который позволяет отобразить только строки, подходящие под маску поиска. Посмотрим на последние блокировки Windows Firewall:

Select-String -Path "C:\Windows\System32\LogFiles\Firewall\pfirewall.log" -Pattern 'Drop' | Select-Object -Last 20 | Format-Table Line

Смотрим, кто пытается пролезть на наш дедик.

При необходимости посмотреть в журнале строки перед и после нужной, можно использовать параметр Context. Например, для вывода трех строк после и трех строк перед ошибкой можно использовать команду:

Select-String 'C:\Windows\Cluster\Reports\Cluster.log' -Pattern ' err ' ‑Context 3

Оба полезных командлета можно объединить. Например, для вывода строк с 45 по 75 из netlogon.log поможет команда:

Get-Content 'C:\Windows\debug\netlogon.log' | Select-Object -First 30 -Skip 45

Журналы системы ведутся в формате .evtx, и для работы с ними существуют отдельные командлеты. Для работы с классическими журналами («Приложение», «Система», и т.д.) используется Get-Eventlog. Этот командлет удобен, но не позволяет работать с остальными журналами приложений и служб. Для работы с любыми журналами, включая классические, существует более универсальный вариант ― Get-WinEvent. Остановимся на нем подробнее.

Для получения списка доступных системных журналов можно выполнить следующую команду:

Get-WinEvent -ListLog *

Вывод доступных журналов и информации о них.

Для просмотра какого-то конкретного журнала нужно лишь добавить его имя. Для примера получим последние 20 записей из журнала System командой:

Get-WinEvent -LogName 'System' -MaxEvents 20

Последние записи в журнале System.

Для получения определенных событий удобнее всего использовать хэш-таблицы. Подробнее о работе с хэш-таблицами в PowerShell можно прочитать в материале Technet about_Hash_Tables.

Для примера получим все события из журнала System с кодом события 1 и 6013.

Get-WinEvent -FilterHashTable @{LogName='System';ID='1','6013'}

В случае если надо получить события определенного типа ― предупреждения или ошибки, ― нужно использовать фильтр по важности (Level). Возможны следующие значения:

  • 0 ― всегда записывать;
  • 1 ― критический;
  • 2 ― ошибка;
  • 3 ― предупреждение;
  • 4 ― информация;
  • 5 ― подробный (Verbose).

Собрать хэш-таблицу с несколькими значениями важности одной командой так просто не получится. Если мы хотим получить ошибки и предупреждения из системного журнала, можно воспользоваться дополнительной фильтрацией при помощи Where-Object:

Get-WinEvent -FilterHashtable @{LogName='system'} | Where-Object -FilterScript {($_.Level -eq 2) -or ($_.Level -eq 3)}

Ошибки и предупреждения журнала System.

Аналогичным образом можно собирать таблицу, фильтруя непосредственно по тексту события и по времени.

Подробнее почитать про работу обоих командлетов для работы с системными журналами можно в документации PowerShell:

  • Get-EventLog.
  • Get-WinEvent.

PowerShell ― механизм удобный и гибкий, но требует знания синтаксиса и для сложных условий и обработки большого количества файлов потребует написания полноценных скриптов. Но есть вариант обойтись всего-лишь SQL-запросами при помощи замечательного Log Parser.

Работаем с журналами посредством запросов SQL

Утилита Log Parser появилась на свет в начале «нулевых» и с тех пор успела обзавестись официальной графической оболочкой. Тем не менее актуальности своей она не потеряла и до сих пор остается для меня одним из самых любимых инструментов для анализа логов. Загрузить утилиту можно в Центре Загрузок Microsoft, графический интерфейс к ней ― в галерее Technet. О графическом интерфейсе чуть позже, начнем с самой утилиты.

О возможностях Log Parser уже рассказывалось в материале «LogParser — привычный взгляд на непривычные вещи», поэтому я начну с конкретных примеров.

Для начала разберемся с текстовыми файлами ― например, получим список подключений по RDP, заблокированных нашим фаерволом. Для получения такой информации вполне подойдет следующий SQL-запрос:

SELECT 
 extract_token(text, 0, ' ') as date, 
 extract_token(text, 1, ' ') as time,
 extract_token(text, 2, ' ') as action, 
 extract_token(text, 4, ' ') as src-ip,  
 extract_token(text, 7, ' ') as port 
FROM 'C:\Windows\System32\LogFiles\Firewall\pfirewall.log' 
WHERE action='DROP' AND port='3389'
ORDER BY date,time DESC

Посмотрим на результат:

Смотрим журнал Windows Firewall.

Разумеется, с полученной таблицей можно делать все что угодно ― сортировать, группировать. Насколько хватит фантазии и знания SQL.

Log Parser также прекрасно работает с множеством других источников. Например, посмотрим откуда пользователи подключались к нашему серверу по RDP.

Работать будем с журналом TerminalServices-LocalSessionManager\Operational.

Не со всеми журналами Log Parser работает просто так ― к некоторым он не может получить доступ. В нашем случае просто скопируем журнал из %SystemRoot%\System32\Winevt\Logs\Microsoft-Windows-TerminalServices-LocalSessionManager%4Operational.evtx в %temp%\test.evtx.

Данные будем получать таким запросом:

SELECT
 timegenerated as Date, 
 extract_token(strings, 0, '|') as user,
 extract_token(strings, 2, '|') as sourceip 
FROM '%temp%\test.evtx'
WHERE EventID = 21
ORDER BY Date DESC

Смотрим, кто и когда подключался к нашему серверу терминалов.

Особенно удобно использовать Log Parser для работы с большим количеством файлов журналов ― например, в IIS или Exchange. Благодаря возможностям SQL можно получать самую разную аналитическую информацию, вплоть до статистики версий IOS и Android, которые подключаются к вашему серверу.

В качестве примера посмотрим статистику количества писем по дням таким запросом:

SELECT
 TO_LOCALTIME(TO_TIMESTAMP(EXTRACT_PREFIX(TO_STRING([#Fields: date-time]),0,'T'), 'yyyy-MM-dd')) AS Date,
 COUNT(*) AS [Daily Email Traffic] 
FROM 'C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\MessageTracking\*.LOG'
WHERE (event-id='RECEIVE') GROUP BY Date ORDER BY Date ASC

Если в системе установлены Office Web Components, загрузить которые можно в Центре загрузки Microsoft, то на выходе можно получить красивую диаграмму.

Выполняем запрос и открываем получившуюся картинку…

Любуемся результатом.

Следует отметить, что после установки Log Parser в системе регистрируется COM-компонент MSUtil.LogQuery. Он позволяет делать запросы к движку утилиты не только через вызов LogParser.exe, но и при помощи любого другого привычного языка. В качестве примера приведу простой скрипт PowerShell, который выведет 20 наиболее объемных файлов на диске С.

$LogQuery = New-Object -ComObject "MSUtil.LogQuery"
$InputFormat = New-Object -ComObject "MSUtil.LogQuery.FileSystemInputFormat"
$InputFormat.Recurse = -1
$OutputFormat = New-Object -ComObject "MSUtil.LogQuery.CSVOutputFormat"
$SQLQuery = "SELECT Top 20 Path, Size INTO '%temp%\output.csv' FROM 'C:\*.*' ORDER BY Size DESC"
$LogQuery.ExecuteBatch($SQLQuery, $InputFormat, $OutputFormat)
$CSV = Import-Csv  $env:TEMP'\output.csv'
$CSV | fl 
Remove-Item $env:TEMP'\output.csv'
$LogQuery=$null
$InputFormat=$null
$OutputFormat=$null

Ознакомиться с документацией о работе компонента можно в материале Log Parser COM API Overview на портале SystemManager.ru.

Благодаря этой возможности для облегчения работы существует несколько утилит, представляющих из себя графическую оболочку для Log Parser. Платные рассматривать не буду, а вот бесплатную Log Parser Studio покажу.

Интерфейс Log Parser Studio.

Основной особенностью здесь является библиотека, которая позволяет держать все запросы в одном месте, без россыпи по папкам. Также сходу представлено множество готовых примеров, которые помогут разобраться с запросами.

Вторая особенность ― возможность экспорта запроса в скрипт PowerShell.

В качестве примера посмотрим, как будет работать выборка ящиков, отправляющих больше всего писем:

Выборка наиболее активных ящиков.

При этом можно выбрать куда больше типов журналов. Например, в «чистом» Log Parser существуют ограничения по типам входных данных, и отдельного типа для Exchange нет ― нужно самостоятельно вводить описания полей и пропуск заголовков. В Log Parser Studio нужные форматы уже готовы к использованию.

Помимо Log Parser, с логами можно работать и при помощи возможностей MS Excel, которые упоминались в материале «Excel вместо PowerShell». Но максимального удобства можно достичь, подготавливая первичный материал при помощи Log Parser с последующей обработкой его через Power Query в Excel.

Приходилось ли вам использовать какие-либо инструменты для перелопачивания логов? Поделитесь в комментариях.

Журнал событий Windows (Event Log) — это важный инструмент, который позволяет администратору отслеживать ошибки, предупреждения и другие информационные сообщения, которые регистрируются операционной системой, ее компонентами и различными программами. Для просмотра журнала событий Windows можно использовать графическую MMC оснастку Event Viewer (
eventvwr.msc
). В некоторых случаях для поиска информации в журналах событий и их анализа гораздо удобнее использовать PowerShell. В этой статье мы покажем, как получать информацию из журналов событий Windows с помощью командлета Get-WinEvent.

Содержание:

  • Получение логов Windows с помощью Get-WinEvent
  • Get-WinEvent: быстрый поиск в событиях Event Viewer с помощью FilterHashtable
  • Расширенный фильтры событий Get-WinEvent с помощью FilterXml
  • Получить логи Event Viewer с удаленных компьютеров

На данный момент в Windows доступны два командлета для доступа к событиям в Event Log: Get-EventLog и Get-WinEvent. В подавляющем большинстве случаев рекомендуем использовать именно Get-WinEvent, т.к. он более производителен, особенно в сценариях обработки большого количества событий с удаленных компьютеров. Командлет Get-EventLog является устаревшим и использовался для получения логов в более ранних версиях Windows. Кроме того, Get-EventLog не поддерживается в современных версиях PowerShell Core 7.x.

Получение логов Windows с помощью Get-WinEvent

Для использования команды Get-WinEvent нужно запустить PowerShell с правами администратора (при запуске Get-WinEvent от имени пользователя вы не сможете получить доступ к некоторым логам, например, к Security).

Для получения списка событий из определенного журнала, нужно указать его имя. В данном примере мы выведем последние 20 событий из журнала System:

Get-WinEvent -LogName Application -MaxEvents 20

Чаще всего вам нужно будет получать информацию из журналов System, Application, Security или Setup. Но вы можете указать и другие журналы. Полный список журналов событий в Windows можно получить с помощью команды:

Get-WinEvent -ListLog *

Get-WinEvent командлет PowerShell

Например, чтобы вывести события RDP подключений к компьютеру, нужно указать лог Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational:

Get-WinEvent -LogName Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational

Или получить логи SSH подключений к Windows из журнала OpenSSH/Operational:

Get-WinEvent -LogName OpenSSH/Operational

Можно выбрать события сразу из нескольких журналов. Например, чтобы получить информацию о ошибках и предупреждениях из журналов System и Application за последние 24 часа (сутки), можно использовать такой код:

$StartDate = (Get-Date) - (New-TimeSpan -Day 1)
Get-WinEvent Application,System | Where-Object {($_.LevelDisplayName -eq "Error" -or $_.LevelDisplayName -eq "Warning") -and ($_.TimeCreated -ge $StartDate )}

Get-WinEvent командлет для поиска событий в журнале Windows

Чтобы вывести только определенные поля событий, можно использовать Select-Object или Format-Table:

Get-WinEvent -LogName System | Format-Table Machinename, TimeCreated, Id, UserID

Get-WinEvent вывести определенные поля событий

Можно выполнить дополнительные преобразования с полученными данными. Например, в этом примере мы сразу преобразуем имя пользователя в SID:

Get-WinEvent -filterhash @{Logname = 'system'} |
Select-Object @{Name="Computername";Expression = {$_.machinename}},@{Name="UserName";Expression = {$_.UserId.translate([System.Security.Principal.NTAccount]).value}}, TimeCreated

Get-WinEvent: быстрый поиск в событиях Event Viewer с помощью FilterHashtable

Рассмотренный выше способ выбора определенных событий из журналов Event Viewer с помощью Select-Object прост для понимая, но выполняется крайне медленно. Это особенно заметно при выборке большого количества событий. В большинстве случаев для выборки событий нужно использовать фильтрацию на стороне службы Event Viewer с помощью параметра FilterHashtable.

Попробуем сформировать список ошибок и предупреждений за 30 дней с помощью Where-Object и FilterHashtable. Сравнима скорость выполнения этих двух команд PowerShell с помощью Measure-Command:

$StartDate = (Get-Date).AddDays(-30)

Проверим скорость выполнения команды с Where-Object:

(Measure-Command {Get-WinEvent Application,System | Where-Object {($_.LevelDisplayName -eq "Error" -or $_.LevelDisplayName -eq "Warning") -and ($_.TimeCreated -ge $StartDate )}}).TotalMilliseconds

Аналогичная команда с FilterHashtable:

(Measure-Command {Get-WinEvent -FilterHashtable @{LogName = 'System','Application'; Level =2,3; StartTime=$StartDate }})..TotalMilliseconds

В данном примере видно, что команда выборки событий через FilterHashtable выполняется в 30 раз быстрее, чем если бы обычный Where-Object (
2.5
сек vs
76
секунд).

Get-WinEvent FilterHashtable выполняется намного быстрее

Если вам нужно найти события по EventID, используйте следующую команду с FilterHashtable:

Get-WinEvent -FilterHashtable @{logname='System';id=1074}|ft TimeCreated,Id,Message

В параметре FilterHashtable можно использовать фильтры по следующим атрибутам событий:

  • LogName
  • ProviderName
  • Path
  • Keywords (для поиска успешных событий нужно использовать значение 9007199254740992 или для неуспешных попыток 4503599627370496)
  • ID
  • Level (1=FATAL, 2=ERROR, 3=Warning, 4=Information, 5=DEBUG, 6=TRACE, 0=Info)
  • StartTime
  • EndTime
  • UserID (SID пользователя)
  • Data

Пример поиска события за определенный промежуток времени:

Get-WinEvent -FilterHashTable @{LogName='System'; StartTime=(get-date).AddDays(-7); EndTime=(get-date).AddHours(-1); ID=1234}

Если нужно найти определенный текст в описании события, можно использовать такую команду:

Get-WinEvent -FilterHashtable @{logname='System'}|Where {$_.Message -like "*USB*"}

Get-WinEvent поиск текста в событиях

Расширенный фильтры событий Get-WinEvent с помощью FilterXml

Фильтры Get-WinEvent с параметром FilterHashtable являются несколько ограниченными. Если вам нужно использовать для выборки событий сложные запросы с множеством условий, нужно использовать параметр FilterXml, который позволяет сформировать запрос на выбор событий в Event Viewer с помощью XML запроса. Как и FilterHashtable, фильтры FilterXml выполняется на стороне сервера, поэтому результат вы получите довольно быстро.

Например, аналогичный запрос для получения последних ошибок из журнала System за последние 30 дней может выглядеть так:

$xmlQuery = @'
<QueryList>
<Query Id="0" Path="System">
<Select Path="System">*[System[(Level=2 or Level=3) and TimeCreated[timediff(@SystemTime) &lt;= 2592000000]]]</Select>
</Query>
</QueryList>
'@
Get-WinEvent -FilterXML $xmlQuery

Get-WinEvent -FilterXML

Для построения кода сложных XML запросов можно использовать графическую консоль Event Viewer:

  1. Запустите
    eventvwr.msc
    ;
  2. Найдите журнал для которого вы хотите создать и выберите Filter Current Log;
  3. Выберите необходимые параметры запроса в форме. В этом примере я хочу найти события с определенными EventID за последние 7 дней от определенного пользователя;
  4. Чтобы получить код XML запроса для параметра FilterXML, перейдите на вкладку XML и скопируйте полученный код (CTRL+A, CTRL+C);
    XML запрос в Event Viewer

  5. Если нужно, вы можете вручную отредактировать данный запрос.

Для экспорта списка событий в CSV файл нужно использовать командлет Export-CSV:

$Events= Get-WinEvent -FilterXML $xmlQuery
$events| Export-CSV "C:\ps\FilterSYSEvents.csv" -NoTypeInformation -Encoding UTF8

Получить логи Event Viewer с удаленных компьютеров

Для получения события с удаленного компьютер достаточно указать его имя в параметре -ComputerName:

$computer='msk-dc01'
Get-WinEvent -ComputerName $computer -FilterHashtable @{LogName="System"; StartTime=(get-date).AddHours(-24)} |   select Message,Id,TimeCreated

Можно опросить сразу несколько серверов/компьютеров и поискать на них определенные события. Список серверов можно получить из текстового файла:

$servers = Get-Content -Path C:\ps\servers.txt

Или из Active Directory:

$servers = (Get-ADComputer -Filter 'operatingsystem -like "*Windows server*" -and enabled -eq "true"').Name
foreach ($server in $servers) {
Get-WinEvent -ComputerName $server -MaxEvents 5 -FilterHashtable @{
LogName = 'System'; ID= 1234
} | Select-Object -Property ID, MachineName
}

Здесь есть другой пример для поиска событий блокировки учетной записи пользователя на всех контроллерах домена:

$Username = 'a.ivanov'
Get-ADDomainController -fi * | select -exp hostname | % {
$GweParams = @{
‘Computername’ = $_
‘LogName’ = ‘Security’
‘FilterXPath’ = "*[System[EventID=4740] and EventData[Data[@Name='TargetUserName']='$Username']]"
}
$Events = Get-WinEvent @GweParams
$Events | foreach {$_.Computer + " " +$_.Properties[1].value + ' ' + $_.TimeCreated}
}

Все способы:

  • «Журнал ошибок» в Виндовс 10
    • Включение логирования
    • Запуск «Просмотра событий»
    • Анализ журнала ошибок
  • Вопросы и ответы: 5

Во время работы операционной системы, как и любого другого программного обеспечения, периодически возникают ошибки. Очень важно уметь анализировать и исправлять подобные проблемы, дабы в будущем они не появлялись снова. В ОС Windows 10 для этого был внедрен специальный «Журнал ошибок». Именно о нем мы и поговорим в рамках данной статьи.

«Журнал ошибок» в Виндовс 10

Упомянутый ранее журнал является лишь небольшой частью системной утилиты «Просмотр событий», которая по умолчанию присутствует в каждой версии Windows 10. Далее мы разберем три важных аспекта, которые касаются «Журнала ошибок» — включение логирования, запуск средства «Просмотр событий» и анализ системных сообщений.

Включение логирования

Для того чтобы система могла записывать все события в журнал, необходимо включить его. Для этого выполните следующие действия:

  1. Нажмите в любом пустом месте «Панели задач» правой кнопкой мышки. Из контекстного меню выберите пункт «Диспетчер задач».
  2. Запуск Диспетчера задач через панель задач в Windows 10

  3. В открывшемся окне перейдите во вкладку «Службы», а затем на самой странице в самом низу нажмите кнопку «Открыть службы».
  4. Запуск утилиты Службы через Диспетчер задач в Windows 10

  5. Далее в перечне служб нужно найти «Журнал событий Windows». Убедитесь, что она запущена и работает в автоматическом режиме. Об этом должны свидетельствовать надписи в графах «Состояние» и «Тип запуска».
  6. Проверка состояния службы Журнал событий Windows

  7. Если значение указанных строк отличается от тех, что вы видите на скриншоте выше, откройте окно редактора службы. Для этого кликните два раза левой кнопкой мыши на ее названии. Затем переключите «Тип запуска» в режим «Автоматически», и активируйте саму службу путем нажатия кнопки «Запустить». Для подтверждения нажмите «OK».
  8. Изменение параметров службы Журнал событий Windows

После этого остается проверить, активирован ли на компьютере файл подкачки. Дело в том, что при его выключении система попросту не сможет вести учет всех событий. Поэтому очень важно установить значение виртуальной памяти хотя бы 200 Мб. Об этом напоминает сама Windows 10 в сообщении, которое возникает при полной деактивации файла подкачки.

Предупреждение при деактивации файла подкачки в Windows 10

О том, как задействовать виртуальную память и изменить ее размер, мы уже писали ранее в отдельной статье. Ознакомьтесь с ней при необходимости.

Подробнее: Включение файла подкачки на компьютере с Windows 10

С включением логирования разобрались. Теперь двигаемся дальше.

Запуск «Просмотра событий»

Как мы уже упоминали ранее, «Журнал ошибок» входит в состав стандартной оснастки «Просмотр событий». Запустить ее очень просто. Делается это следующим образом:

  1. Нажмите на клавиатуре одновременно клавишу «Windows» и «R».
  2. В строку открывшегося окна введите eventvwr.msc и нажмите «Enter» либо же кнопку «OK» ниже.
  3. Запуск утилиты Просмотр событий через командную строку в Windows 10

В результате на экране появится главное окно упомянутой утилиты. Обратите внимание, что существуют и другие методы, которые позволяют запустить «Просмотр событий». О них мы в деталях рассказывали ранее в отдельной статье.

Подробнее: Просмотр журнала событий в ОС Windows 10

Анализ журнала ошибок

После того как «Просмотр событий» будет запущен, вы увидите на экране следующее окно.

Общий вид утилиты Просмотр событий при запуске в ОС Windows 10

В левой его части находится древовидная система с разделами. Нас интересует вкладка «Журналы Windows». Нажмите на ее названии один раз ЛКМ. В результате вы увидите список вложенных подразделов и общую статистику в центральной части окна.

Открытие раздела Журналы Windows в утилите Просмотр событий в Windows 10

Для дальнейшего анализа необходимо зайти в подраздел «Система». В нем находится большой список событий, которые ранее происходили на компьютере. Всего можно выделить четыре типа событий: критическое, ошибка, предупреждение и сведения. Мы вкратце расскажем вам о каждом из них. Обратите внимание, что описать все возможные ошибки мы не можем просто физически. Их много и все они зависят от различных факторов. Поэтому если у вас не получится что-то решить самостоятельно, можете описать проблему в комментариях.

Критическое событие

Данное событие помечено в журнале красным кругом с крестиком внутри и соответствующей припиской. Кликнув по названию такой ошибки из списка, немного ниже вы сможете увидеть общие сведения происшествия.

Пример критической ошибки в журнале событий в Windows 10

Зачастую представленной информации достаточно для того, чтобы найти решение проблемы. В данном примере система сообщает о том, что компьютер был резко выключен. Для того чтобы ошибка не появлялась вновь, достаточно просто корректно выключать ПК.

Подробнее: Выключение системы Windows 10

Для более продвинутого пользователя есть специальная вкладка «Подробности», где все событие представлены с кодами ошибок и последовательно расписаны.

Ошибка

Этот тип событий второй по важности. Каждая ошибка помечена в журнале красным кругом с восклицательным знаком. Как и в случае с критическим событием, достаточно нажать ЛКМ по названию ошибки для просмотра подробностей.

Пример стандартной ошибки в Журнале событий в ОС Windows 10

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

Подробнее: Устанавливаем обновления для Windows 10 вручную

Предупреждение

Сообщения данного типа возникают в тех ситуациях, когда проблема не носит серьезный характер. В большинстве случаев их можно игнорировать, но если событие повторяется раз за разом, стоит уделить ему внимание.

Пример предупреждения в журнале событий в ОС Windows 10

Чаще всего причиной появления предупреждения служит DNS-сервер, вернее, неудачная попытка какой-либо программы подключиться к нему. В таких ситуациях софт или утилита попросту обращается к запасному адресу.

Сведения

Этот тип событий самый безобидный и создан лишь для того, чтобы вы могли быть в курсе всего происходящего. Как понятно из его названия, в сообщение содержатся сводные данные о всех инсталлированных обновлениях и программах, созданных точках восстановления и т.д.

Пример сообщений со сведениями в журнале событий в ОС Windows 10

Подобная информация будет очень кстати для тех пользователей, которые не хотят устанавливать сторонний софт для просмотра последних действий Windows 10.

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

Наша группа в TelegramПолезные советы и помощь

Журналы Windows играют ключевую роль в обеспечении безопасности, производительности и стабильности операционной системы. Они позволяют администраторам отслеживать события, выявлять проблемы и проводить анализ работы системы. В этой статье мы подробно рассмотрим, что такое журналы Windows, как они работают, какие виды журналов существуют, а также как их использовать для диагностики и мониторинга.

Ознакомиться с тарифами Windows хостинга можно тут

Что такое журналы Windows?

Журналы Windows — это записи, содержащие информацию о событиях, происходящих в операционной системе. Каждое событие записывается в виде записи журнала, которая включает в себя временную метку, источник события, уровень важности и описание события.

Зачем нужны журналы Windows?

Журналы служат нескольким целям:

  1. Мониторинг безопасности: Журналы помогают отслеживать попытки несанкционированного доступа и другие подозрительные действия.
  2. Диагностика проблем: При возникновении ошибок и сбоев журналы предоставляют информацию, необходимую для их устранения.
  3. Анализ производительности: Журналы могут помочь в выявлении узких мест в производительности системы.
  4. Отчетность: Журналы могут использоваться для создания отчетов о состоянии системы и безопасности.

Виды журналов Windows

Windows предлагает несколько типов журналов, каждый из которых предназначен для записи определенных событий:

1. Журнал приложений

Журнал приложений содержит записи о событиях, связанных с установленными приложениями. Это может включать ошибки, предупреждения и другую информацию, которую приложения отправляют в систему.

2. Журнал системных событий

Системный журнал фиксирует события, происходящие на уровне операционной системы. Это могут быть ошибки драйверов, проблемы с оборудованием и другие системные события.

3. Журнал безопасности

Журнал безопасности отслеживает события, связанные с безопасностью, такие как входы в систему, изменения прав доступа и попытки несанкционированного доступа.

4. Журнал установки

Журнал установки фиксирует события, связанные с установкой и обновлением программного обеспечения и драйверов.

5. Журнал Windows PowerShell

Этот журнал хранит записи о выполнении команд и скриптов в PowerShell, что полезно для администраторов и разработчиков.

Как получить доступ к журналам Windows

Для доступа к журналам Windows используется встроенная утилита «Просмотр событий».

Шаги для открытия «Просмотр событий»:

  1. Нажмите комбинацию клавиш Win + R, чтобы открыть окно «Выполнить».
  2. Введите команду eventvwr и нажмите Enter.
  3. В левой панели вы увидите различные категории журналов, такие как «Журналы Windows» и «Журналы приложений и служб».

Основные операции с журналами

Просмотр и фильтрация событий

  1. Просмотр событий: В правой части окна вы можете видеть список событий. Дважды щелкните на любое событие, чтобы просмотреть его детали.
  2. Фильтрация событий: Чтобы упростить поиск нужных событий, вы можете использовать фильтры. Нажмите на «Фильтр текущего журнала» в правой части окна и задайте параметры фильтрации (например, по уровню важности или источнику).

Экспорт и импорт журналов

Вы можете экспортировать журналы в файл для дальнейшего анализа или архивирования.

  1. Для экспорта: щелкните правой кнопкой на нужном журнале и выберите «Сохранить все события как…».
  2. Выберите формат файла (например, XML или EVTX) и укажите место для сохранения.
  3. Для импорта: используйте опцию «Открыть сохраненный журнал» в меню.

Очистка журналов

С течением времени журналы могут заполняться, и их очистка может быть необходима для управления дисковым пространством.

  1. Щелкните правой кнопкой мыши на журнале и выберите «Очистить журнал».
  2. Подтвердите действие.

Анализ событий в журналах Windows

Анализ журналов Windows может помочь в выявлении проблем и обеспечении безопасности. Рассмотрим несколько важных аспектов анализа:

1. Поиск ошибок

Ошибки и предупреждения в журналах обычно выделяются цветом. Просматривая журнал, обратите внимание на записи с уровнем «Ошибка» или «Предупреждение».

2. Аудит безопасности

Для обеспечения безопасности системы важно отслеживать записи в журнале безопасности. Проверьте, были ли попытки входа в систему с неправильным паролем или изменения прав доступа.

3. Мониторинг производительности

Системный журнал может помочь выявить проблемы с производительностью. Обратите внимание на события, связанные с высоким использованием ресурсов или сбоями оборудования.

4. Использование фильтров

Фильтры позволяют сосредоточиться на конкретных событиях. Вы можете фильтровать события по времени, уровню важности или источнику.

Устранение распространенных проблем

1. Проблемы с приложениями

Если приложение не работает должным образом, проверьте журнал приложений на наличие ошибок, связанных с данным приложением.

2. Проблемы с оборудованием

Журнал системных событий может содержать информацию о проблемах с оборудованием, таких как сбои драйверов или проблемы с жестким диском.

3. Проблемы с безопасностью

Если вы подозреваете, что система была скомпрометирована, проверьте журнал безопасности на наличие подозрительных действий.

4. Перегрузка журналов

Если журнал переполнен, это может привести к проблемам с записью новых событий. Регулярно очищайте и архивируйте журналы, чтобы избежать этой проблемы.

Настройка ведения журналов

1. Изменение параметров журнала

Вы можете настроить параметры ведения журналов, чтобы контролировать, как и когда они записываются. Например, вы можете установить максимальный размер журнала или выбрать, как система будет реагировать на переполнение.

2. Настройка аудита

Вы можете настроить аудит безопасности, чтобы отслеживать определенные действия, такие как вход в систему или изменения в политике безопасности.

Заключение

Журналы Windows являются мощным инструментом для мониторинга и анализа системы. Правильное использование журналов позволяет обеспечить безопасность, производительность и стабильность операционной системы. Надеемся, что эта статья поможет вам эффективно управлять и анализировать журналы Windows, а также быстро устранять проблемы.

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Postal 2 windows 10 вылетает
  • Программа для перевода windows в тестовый режим
  • Шрифт логотипа windows 10
  • Почему windows называют многозадачной средой
  • Windows 7 removewat официальный сайт