IIS 7 fichiers journaux suppression automatique?
Y a-t-il une fonctionnalité dans IIS 7 qui supprime automatiquement les fichiers journaux plus anciens qu'un amt spécifié de jours?
Je suis conscient que cela peut être accompli en écrivant un script (et l'exécuter chaque semaine) ou un service windows, mais je me demandais s'il y avait une fonctionnalité intégrée ou quelque chose qui le fait.
En outre, Actuellement, nous avons désactivé la connexion car elle empile une grande quantité d'espace. Est-ce un problème?
4 réponses
Vous pouvez créer une tâche qui s'exécute quotidiennement à l'aide des outils D'administration > Planificateur de tâches.
Définissez votre tâche pour exécuter la commande suivante:
forfiles /p "C:\inetpub\logs\LogFiles" /s /m *.* /c "cmd /c Del @path" /d -7
Cette commande est pour IIS7, et elle supprime tous les fichiers journaux d'une semaine ou plus.
Vous pouvez ajuster le nombre de jours en modifiant la valeur /d
arg.
Script batch d'une ligne:
forfiles /p C:\inetpub\logs /s /m *.log /d -14 /c "cmd /c del /q @file"
Modifiez le commutateur /d pour modifier le nombre de jours pendant lesquels un fichier journal se bloque avant la suppression. Le commutateur / s récurse également les sous-répertoires.
Solution similaire mais dans powershell.
J'ai défini une tâche pour exécuter powershell avec la ligne suivante en Argument..
dir D:\IISLogs |where { ((get-date)-$_.LastWriteTime).days -gt 15 }| remove-item -force
Il supprime tous les fichiers D:\IISLOgs dossier de plus de 15 jours.
Un autre revêtement PowerShell viable:
Get-ChildItem -Path c:\inetpub\logs\logfiles\w3svc*\*.log | where {$_.LastWriteTime -lt (get-date).AddDays(-180)} | Remove-Item -force
Dans le cas où $_.LastWriteTime
ne fonctionne pas, vous pouvez utiliser $PSItem.LastWriteTime
à la place.
Pour plus d'informations et d'autres suggestions pour tirer parti de l'utilisation de l'espace disque du dossier IIS LogFiles, je suggère également de lire ce post.