Как чистить логи


Очистка журналов событий Windows с помощью PowerShell и wevtutil

В некоторых случаях требуется удалить на компьютере или сервере все записи в журнале событий Windows.  Конечно, очистку системных журналов, можно выполнить и из графической оснастки просмотра событий —  Eventvwr.msc (ПКМ по нужному журналу ->Clear Log), однако начиная с Vista, в Windows используется несколько десятков журналов для различных компонентов системы, и очищать их все из консоли Event Viewer будет довольно утомительно. Гораздо проще очистить логи из командной строки: с помощью PowerShell или встроенной утилиты wevtutil.

  • Очистка журналов событий с помощью PowerShell
  • Очистка журналов с помощью консольной утилиты WevtUtil.exe

Очистка журналов событий с помощью PowerShell

В том случае, если у вас установлен PowerShell 3 (по умолчанию уже установлен в Windows 8 / Windows Server 2012 и выше), для получения списка журналов и их очистки можно воспользоваться командлетами Get-EventLog и Clear-EventLog.

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

Get-EventLog –LogName *

Для удаления всех событий из конкретного журнала событий (например, журнала System), воспользуйтесь командой:

Clear-EventLog –LogName System

В результате, все события из этого журнала будут удалены, а в журнале события останется только одно событие EventId 104 с текстом «The System log file was cleared».

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

Get-EventLog -LogName * | ForEach { Clear-EventLog $_.Log }

Таким образом, будут очищены все классические журналы EventLogs.

Очистка журналов с помощью консольной утилиты WevtUtil.exe

Для работы с событиями в Windows уже довольно давно имеется в наличии мощная утилита командой строки WevtUtil.exe. Ее синтаксис немного сложноват на первый взгляд. Вот, к примеру, что возвращает help утилиты:

Чтобы вывести список зарегистрированных в системе журналов событий, выполните команду:

WevtUtil enum-logs

или более короткий вариант:

WevtUtil el

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

Примечание. Посчитать их количество можно с помощью команды WevtUtil el |Measure-Object. В моем случае, в Windows 10 насчитывается 1053 различных журналов).

Можно получить более подробную информацию по конкретному журналу:

WevtUtil gl Setup

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

WevtUtil cl Setup

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

WevtUtil cl Setup /bu:SetupLog_Bak.evtx

Чтобы очистить сразу все журналы, можно воспользоваться командлетом Powershell GetWinEvent для получения всех объектов журналов и Wevtutil.exe для их очистки:

Get-WinEvent -ListLog * -Force | % { Wevtutil.exe cl $_.LogName }

или так

Wevtutil el | ForEach { wevtutil cl “$_”}

Примечание.  В нашем примере не удалось очистить 3 журнала из-за ошибки доступа. Стоит попробовать очистить содержимое этих журналов из консоли Event Viewer.

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

for /F "tokens=*" %1 in ('wevtutil.exe el') DO wevtutil.exe cl "%1"

Мануал - Чистим server_log и mysql-логи одним кликом. | Pawno-Info.Ru

Доброго времени суток, уважаемые пользователи портала.​

На самом деле, ничего необычного в нижепредставленном нет, ибо это скорее некоторый лайф-хак, просто небольшой .bat-файл с кодом, который может сэкономить вам нервы (как он сохранил их мне, в некоторых случаях).
В случае, если вы ведёте разработку и часто запускаете/пере-запускаете сервер, смотрите логи, исправляете какие-либо ошибки - там скапливается достаточно мусора с предыдущих сессий сервера, которые мешают вашей работе - это раздражает и, честно говоря, мне лень вручную чистить все нижеуказанные файлы (как минимум, это отнимает время, которое можно потратить на что-либо другое).

Данный исполняемый файл очищает нижеуказанные файлы:

  • /project_folder/server_log.txt,
  • /project_folder/logs/errors.log,
  • /project_folder/logs/log-core.log,
  • /project_folder/logs/warnings.log,
  • /project_folder/logs/plugins/mysql.log
* project_folder - папка вашего проекта.

1. И так, Вам необходимо создать .txt-файл в корневой папке сервера, после чего вставить туда следующий код:

PHP:

break>"%CD%\server_log.txt" break>"%CD%\logs\errors.log" break>"%CD%\logs\log-core.log" break>"%CD%\logs\warnings.log" break>"%CD%\logs\plugins\mysql.log"
2. Укажите название и сохраните данный .txt-файл с указанным кодом.
3. Выберите данный файл, нажмите на него правой кнопкой мыши и выберите пункт "переименовать", после чего измените расширение файла с .txt на .bat.
4. Profit. Запуская данный файл, все файлы с логами будут автоматически очищены.

 

Как почистить все журналы windows с помощью скрипта

Как почистить все журналы windows с помощью скрипта

Как почистить все журналы windows с помощью скрипта

просмотр журнала событий

Иногда чтобы посмотреть появляется какая либо ошибка или событие, трудно бывает искать его среди кучи событий, можно конечно фильтровать, но проще все очистить. Чистить в ручную долго и муторно, предлагаю скрипт который почистит все журналы windows. Перед выполнением скрипта советую в просмотре событий сохранить логи windows для дальнейшего изучения, много раз было, что старые файлы оказываются, очень нужны, учитесь на чужих ошибках, а лучше их вообще не совершайте.

До очистки видим, что в логах windows много событий

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

После, результат на лицо все логи windows удалены в оснастке просмотр событий, и вы только обнаружите событие о том кто и когда произвел удаление.

вот сам текст скрипта

@echo off
FOR /F "tokens=1,2*" %%V IN ('bcdedit') DO SET adminTest=%%V
IF (%adminTest%)==(Access) goto noAdmin
for /F "tokens=*" %%G in ('wevtutil.exe el') DO (call :do_clear "%%G")
echo.
echo goto theEnd
:do_clear
echo clearing %1
wevtutil.exe cl %1
goto :eof
:noAdmin
exit

Скачать сам скрипт

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

Материал сайта pyatilistnik.org

Иван Семин

Как удалить временные файлы в Windows 7. Log, tmp, bak

Windows и многие приложения создают временные файлы. Временный файл содержит данные, которые приложение не желает хранить в оперативной памяти из-за ее неустойчивости. В то же время, в отличие от документов, которые Вы создаете с помощью приложения, эти данные не предназначены для долговременного хранения. Таким образом, временные данные представляют собой нечто среднее — они необходимы, но лишь на короткое время. Проблема заключается в том, что некоторые временные файлы существуют дольше, чем изначально предполагается. Зачастую в этом виновато создавшее их приложение.

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

Использование командной строки вместо проводника

Хотя проводник и не обнаруживает все временные файлы (лишь их большую часть), он располагает замечательным интерфейсом, а возможность увидеть файлы перед удалением делает очистку значительно безопаснее, чем при использовании утилит командной строки. Все, что Вам требуется сделать после обнаружения временных файлов для их безвозвратного удаления из системы, — выделить и нажать клавиши Shift+Del.

Существует две утилиты командной строки, составляющие альтернативу проводнику — Del и Erase. Однако при их выполнении я рекомендую соблюдать осторожность. Убедитесь в наличии полной резервной копии системы и закройте как можно больше открытых приложений (по возможности оставьте только окно командной строки). Действуют утилиты Del и Erase одинаково, поэтому в качестве примера рассмотрим только утилиту Del. Чтобы удалить файл, введите в командной строке следующую команду:

Del имя_файла

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

  • — удаляет файлы с заданным атрибутом. Атрибут указывается путем добавления идентифицирующей его буквы: А (архивный), Н (скрытый), R (только чтение) и S (системный). Атрибут может содержать знак - (минус), указывающий на то, что файлы с данным атрибутом, напротив, не следует удалять. Например, чтобы удалить файлы для чтения без системного атрибута, следует указать два ключа — /AR и /А-S.
  • /F — удаляет файлы только для чтения. По умолчанию утилита Del игнорирует их, поскольку удаление таких файлов требует изменения их статуса. Никогда не используйте этот ключ при удалении временных файлов. При обнаружении временного файла с атрибутом «только чтение» выясните причину его установки. Возможно, это обусловлено проблемами в приложении, которое создало временный файл.
  • — предписывает утилите Del выводить запрос на подтверждение при удалении файла. Используйте этот ключ, если сомневаетесь в необходимости удаления всех файлов по заданному критерию. Хотя подобный метод займет у Вас некоторое время, это лучше, чем совершить ошибку, удалив полезные файлы.
  • /Q — этот ключ самый опасный, поскольку отключает вывод на экран удаляемых файлов. Если Вы не желаете видеть файлы-, то более удачным решением является перенаправить вывод с экрана в файл. Например, чтобы удалить все файлы, начинающиеся с символа ~ (тильда), и перенаправить вывод в файл MyDeletions.TXT, введите команду:

Del         /S > Удаленные_файлы.ТХТ

 

Список файлов не появится на экране, однако будет сохранен для последующего анализа.

  • /S — удаляет все файлы, удовлетворяющие заданному критерию, в текущей папке и всех вложенных в нее папках. При использовании в корневой папке этот ключ позволяет удалить файлы определенного вида на всем замененном жестком диске. Следует пользоваться данной функцией с осторожностью — во вложенных папках могут оказаться файлы, соответствующие критерию удаления, которые, на самом деле, нужно сохранить.

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

 

Удаление файлов, начинающихся с тильды

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

При наличии расширения (как, например, файлы, создаваемые Microsoft Word) временный файл представляет собой промежуточную форму документа, над которым Вы работаете. Тем не менее, если окно Word не открыто, а Вы видите подобные файлы на жестком диске, то это обычно указывает на некорректное завершение Word. В этом случае временные файлы могут быть использованы для восстановления потерянных данных документа. К сожалению, после восстановления временные файлы не удаляются, поэтому, возможно, имеет смысл удалить их вручную. Общая идея такова: файл с расширением, как правило, является временной версией документа, и ее не следует удалять, не приняв взвешенного решения.

Вне зависимости от того, сколько приложений Вы закроете при очистке жесткого диска, несколько файлов, начинающихся с символа ~ (тильда), все равно останутся открытыми. Как проводник, так и утилита Del выведут сообщения о том, что эти файлы используются, и откажутся удалять их при любых условиях. Просто оставьте эти файлы в покое.

Не удивляйтесь тому, что размер некоторых временных файлов равен 0 байт (другими словами, в них отсутствует информация). Часть этих файлов действительно пуста, а часть скрывает свою информацию при помощи так называемых потоков данных. Тем не менее, их следует удалить, чтобы освободить элементы каталога для других приложений. Иногда записей каталога не остается, что приводит к нестабильности системы.

Уничтожение ТМР и ВАК-файлов

Обычно удалить ТМР-файлы с жесткого диска можно, закрыв все приложения. Возможно, Windows оставит 1-2 файла открытыми, однако в ТМР-файле никогда не содержатся данные, которые пригодятся Вам в будущем. Удаление ТМР-файлов — дело вполне безопасное и безусловно полезное.

 

Аналогично ВАК файлы (резервные файлы) содержат старые копии документов, с которыми Вы работаете. После закрытия приложения ВАК-файл перестает использоваться, и Вы можете смело удалить его. Я, как правило, сохраняю ВАК-файлы до создания резервной копии жесткого диска, и удаляю их в процессе последующей очистки. ВАК-файл представляет собой временную резервную копию данных; Вы можете использовать его для восстановления данных, потерянных в результате сбоя приложения.

Не все приложения присваивают файлам расширение ВАК, например, Microsoft Word вместо ВАК использует расширение WBK. Назначение этих файлов то же самое, просто компания-разработчик делает все возможное, чтобы запутать пользователей. Расширения временных файлов должны быть указаны в руководстве пользователя приложения, однако иногда, чтобы определить их, необходимо создать файл и несколько раз сохранить его, а между сеансами сохранения обязательно модифицировать. Временный файл располагается в той же папке, что и исходный, имеет такое же имя, но использует расширение, выделенное приложением для резервных файлов.

Поиск LOG-файлов

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

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

Любопытный факт заключается в том, что иногда Вы можете натолкнуться на приложения, использующие LOG-файлы постоянно. В этих случаях удалять LOG- файлы, разумеется, не следует. Например, UPS-приложения, которые я использую, пользуются LOG-файлом для вывода сообщений о событиях, связанных с питанием, например, скачках напряжения. В LOG-файле также содержится информация о времени последнего запуска процедуры диагностики и других выполненных действиях. Тем не менее, если я удалю этот файл, с UPS-приложением не произойдет ничего страшного — оно просто «забудет» прошлые события.

LOG-файлы, которые Вы можете безболезненно удалить, находятся в папках приложений и в папке \Windows. Как правило, не следует удалять LOG-файлы из таких папок, как \Windows\System32 и др. Вы можете начать с удаления LOG-файлов из папки \Windows, предварительно прочитав или заархивировав их. После этого займитесь поиском остальных LOG-файлов системы. LOG-файлы, расположенные в папках приложений, следует прочитать, чтобы определить, используются ли они приложением. Если окажется, что нет, можете смело удалять их.

Как очистить журналы logs в Systemd

В этой краткой показаны два способа очистки журналов журнала systemd из системы Linux.

Журнал systemd – это собственная система журналирования systemd. Это эквивалентно системному журналу в системе инициализации. Она собирает и хранит данные журнала ядра, сообщения системного журнала, стандартный вывод и ошибки для различных системных служб.

Машина Linux с systemd записывает журналы в каталог /var/log/journal. Если вы помните структуру каталогов Linux , в /var хранятся системные журналы.

Что касается ведения журнала, то со временем она начинает расти. И если вы проверите дисковое пространство в Linux, вы увидите, что иногда это занимает несколько ГБ.

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

 

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

Сначала проверьте пространство, занятое журналами журнала, с помощью команды du:

du -sh /var/log/journal/

 

Вы также можете использовать команду journalctl для той же задачи:

journalctl --disk-usage

 

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

annihilator@andreyex:~$ journalctl --disk-usage Archived and active journals take up 1.6G in the file system. annihilator@andreyex:~$ sudo du -sh /var/log/journal/ 1.7G /var/log/journal/

 

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

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

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

sudo journalctl --rotate

 

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

 

1. Очистить журнал журнала старше x дней

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

sudo journalctl --vacuum-time=2d

 

Вот как может выглядеть вывод:

Vacuuming done, freed 1.6G of archived journals from /var/log/journal/1b9ab93094fa4978beba80fd3c48a18c

 

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

 

2. Ограничить журналы до определенного размера

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

sudo journalctl --vacuum-size=100M

 

Это уменьшит размер журнала примерно до 100 МБ.

Vacuuming done, freed 40.0M of archived journals from /var/log/journal/1b9ab93094fa4978beba80fd3c48a18c.

 

Вы можете указать размер в ГБ с G, МБ с М, КБ с К и т. д.

Надеюсь, вам понравится этот быстрый совет по очистке файлов журналов systemd. Если у вас есть какие-либо вопросы или предложения, пожалуйста, оставьте комментарий ниже.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Чистим Логи (*.log) на linux серверах — my-mails.ru