Я только что обнаружил, что IIS создает журналы неопределенно долго, и, похоже, нет никаких настроек IIS, которые бы автоматически очищали старые файлы журналов. Каков наилучший способ держать журналы IIS под контролем, чтобы они не заполняли весь жесткий диск?
20
Ответы:
Вам нужно будет запустить запланированное задание, чтобы сделать это. Вот скрипт Powershell, который должен работать.
Это должно очистить все, что было изменено более 30 дней назад. Измените путь в первой строке, где хранятся ваши файлы журналов. Также измените значение параметра -30 на то, как долго вы хотите сохранить файлы. -30 означает, что вы удалите все, что старше 30 дней.
Вы можете взглянуть на эту статью, которая показывает различные свойства для объекта FileInfo, если вы не хотите использовать LastWriteTime.
источник
Get-ChildItem *.* -include *.log
Вы могли бы варить свои собственные, но я думаю, что какой-то умный человек уже написал это для вас. Проверьте IISLogs & IISLogs Lite!
Если все, что вы делаете - это удаляете логи, то можете отключить логи, если это не нужно! Вы сэкономите на своем сервере много операций ввода-вывода!
источник
В настоящее время я делаю это с помощью очень простого скрипта пакетного файла:
Я также сделал запись « Запланированная задача», чтобы запускать ее ежедневно, и даже активировал функцию сжатия файлов в этой папке: все это вместе решило мою проблему с файлами IIS навсегда.
Объяснение переключателей в командном файле:
Если вы ищете жизнеспособную альтернативу Powershell , см. Другой ответ : за другими советами о том, как правильно уменьшить папку IIS LogFiles, ознакомьтесь с этим сообщением .
источник
Что ж, если вы хотите регулярно их чистить, почему бы не отключить ведение журнала запросов в IIS? Вы можете использовать что-то вроде Google Analytics или какой-либо другой службы, я вижу, что многие люди делают это, чтобы избежать головной боли, связанной с тем, что журналы IIS влияют на производительность и поглощают все дисковое пространство, но, конечно, все зависит от ваших требований.
источник
Microsoft предлагает скрипт на своем сайте .
Ниже приведена модифицированная версия, которую я использую для своих нужд.
Обратите внимание, что я изменил с «DateCreated» на «DateLastModified», так как дата создания контринтуитивно может быть позже, чем последний измененный, как это может быть в случае с копируемыми файлами. Вы, вероятно, не хотите удалять файлы, которые были недавно обновлены.
Затем запустите его, используя cscript.exe (например,
cscript.exe d:\scripts\logRetentionScript.vbs
).источник
Создайте запланированное задание на сервере. В разделе действий вы хотите:
Дайте ему ежедневное или еженедельное расписание. Выполнено.
источник