Az IIS naplók automatikus tisztítása a PowerShell használatával

Az IIS (Internet Information Services) webszerver meglehetősen sok naplót generál a folyamat során, amelyeket a naplófájlokba írnak. A fő probléma az, hogy alapértelmezés szerint az IIS-naplók a rendszerlemezen találhatók, és idővel a naplófájlok eltömíthetik az összes rendelkezésre álló lemezterületet, és a szerver működése megbénul. Például az én esetemben az Exchange Server 2013-ban, közel 1000 postafiókkal, az IIS napi 200 MB naplófájlt hoz létre. Így egy év alatt az IIS naplófájlok 70 GB helyet foglalnak el. Lehetséges-e ezeket a folyamatokat valamilyen módon irányítani??

Az IIS-nek nincs beépített IIS-napló-elforgatási eljárása, ezért a rendszergazdáknak kitalálniuk kell saját sémáikat az IIS-naplók automatikus elforgatására vagy törlésére a webkiszolgálón.

Mindenekelőtt az adminisztrátornak elvileg kell eldöntenie, hogy szükség van-e az IIS által generált naplókra. Ha a kérdés negatív - a naplók naplózását letilthatjuk a konzol webhelybeállításaiban Internet Information Services (IIS) menedzser a szakaszban fakitermelés. Bizonyos esetekben a naplófájlok átvitele a rendszerlemezről az adatlemezre / dedikált lemezre is alkalmazható. Ehhez ugyanabban a szakaszban csak módosítsa a LogFiles könyvtár elérési útját.

Tehát alapértelmezés szerint a Windows Server 2003 rendszerben az IIS naplókat a% mappában tároljákwindir% \ system32 \ LogFiles \ és a Windows Server 2008/2012 / R2-ban a mappában % SystemDrive% \ inetpub \ logs \ LogFiles \.

A rendszerlemezen lévő szabad hely kimerülése esetén az adminisztrátor kétségbeesetten megpróbálja megtalálni, mi az a lemez eltömődött, és biztonságosan nem figyel az inetpub könyvtárra, mert első pillantásra mérete elhanyagolható. A probléma az, hogy alapértelmezés szerint az adminisztrátornak nincs engedélye a normál könyvtárak megtekintésére az inetpub mappában, így a Windows Explorer nem jeleníti meg az almappák tényleges méretét..

Ha megpróbálja megnyitni a% SystemDrive% \ inetpub \ logs \ LogFiles könyvtárat, megerősítve a szükséges engedélyek hozzárendelését (vagy az Intézőt rendszergazdai jogosultságokkal futtatva), láthatja, hogy a naplómappa mérete valójában elég nagy..

Általános szabályként minden 3-7 naposnál régebbi naplófájlokat biztonságosan törölhet. Ezt manuálisan (nem a legjobb lehetőség), vagy automatikusan egy PowerShell-parancsfájl segítségével végezheti el, amely az ütemezett módon törli a régi naplófájlokat..

Egy egyszerű PowerShell-parancsfájl, amely rekurzívan törli a * .log kiterjesztésű fájlokat a C: \ inetpub \ logs könyvtárból, a következő lehet:

gci 'C: \ inetpub \ logs -Include' * .log '-Furcurse | ? LastWriteTime -LT (Get-Date) .AddDays (-7) | Remove-tétel

A szkript automatikus futtatásához az alábbi feladatot hozhatja létre az ütemezőben (Feladatütemező):

  1. kezdet Feladat ütemező
  2. A jobb oldali ablaktáblában akció kattintson a Hozzon létre egy alapvető feladatot
  3. Adja meg a feladat nevét: CleanIISLog
  4. Állítsa be a heti indítási feladatot szombatonként
  5. Elindított program: powershell.exe
  6. érvek: -NoProfile -parancs "gci" C: \ inetpub \ logs '-Beillesztés' * .log '-Fizetés | ? LastWriteTime -LT (Get-Date) .AddDays (-7) | Elem eltávolítása »
  7. Most nyissa meg a létrehozott feladat tulajdonságait
  8. Adja meg, hogy a feladat a Rendszer (NT AUTHORITY \ System) alatt indul el, és jelölje be a négyzetet Futtassa a legmagasabb jogosultságokkal
  9. Tesztelje a feladatot azáltal, hogy rákattint rá az RMB-re, és kiválasztja futás
  10. Győződjön meg arról, hogy a 7 naposnál régebbi naplófájlok automatikusan törlődnek

tanács. A naplók méretének "gyors" csökkentésének másik módja, ha ezeket valamilyen okból nem lehet törölni, az NTFS-tömörítés engedélyezése a naplókönyvtárban. mert a naplók egyszerű szöveges fájlok, elég erősen tömörítve vannak (4-5 alkalommal). Az NTFS tömörítés engedélyezéséhez nyissa meg a naplómappa tulajdonságait és kattintson a Speciális gombra. Jelölje be a négyzetet A lemezterület megtakarításához tömörítse a tartalmat és kattintson duplán az OK gombra.