MSSQL: Umgang mit Fehlerprotokollen
Normalerweise sollten die SQL-Serverlogs kein Problem sein. Weder die Größe, noch die Handhabbarkeit. Aber im Fehlerfall einer Software kann es sein, dass euch der Plattenplatz ausgeht, weil die Logs so groß werden.
Natürlich kann man das über die Option regeln, dass man die maximale Größe der Protokolle begrenzt, aber es gibt noch eine andere Methode, die in bestimmten Konstellationen vorteilhaft sein kann.
Dazu geht man im Microsoft SQL Server Management Studio auf Verwaltung (Management) und dort auf SQL Server-Protokolle (SQL Server Logs).
Dort dann per Rechtsklick auf Konfigurieren (Configure).
Dann setzt man den Haken bei „Anzahl der Fehlerprotokolldateien vor der Wiederverwendung beschränken“ und setzt die maximale Anzahl dann auf z.B. 30.
Als nächsten Schritt legt man im SQL-Server-Agenten einen neuen Auftrag an, der jede Nacht die Logfiles per sp_cycle_errorlog rotiert.
Dabei wird dann das bestehende Logfile in „Archiv-Nr. XX“ umbenannt und es wird eine neues „aktuelles“ Logfile gestartet.
Auf diese Weise habt ihr immer 30 Tage (bei mir reicht ein Monat, vielleicht braucht ihr mehr) an Protokollen,
und es ist sehr einfach jeden Tag das zu finden, was ihr sucht, da jedes Protokoll nur die Historie eines Tages enthält.
Das ist viel einfacher zu handhaben als riesige Fehlerprotokolle mit vielen Tagen Müll, die man durchforsten muss, wenn man nach Daten eines bestimmten Tages sucht.
Außerdem werden die Dateien dadurch nicht so riesig!
Wer schon einmal das Vergnügen hatte, sich durch ein Logfile mit 20GB zu pflügen, wird das zu schätzen wissen.
Sollten die Logfiles dadurch noch immer zu groß werden, könnt ihr natürlich die Größe noch begrenzen.
Aber dann gibt es auch wirklich ein massives Problem, das schnell behoben werden sollte.
Mehr Informationen zu sp_cycle_errorlog gibt es bei docs.microsoft