ADC

Protokolldateirotation konfigurieren

Die NetScaler-Appliance generiert Protokolle in mehreren Verzeichnissen und in verschiedenen Formaten. Einige dieser Protokolle werden standardmäßig nicht rotiert und können an Größe zunehmen und zu viel Speicherplatz beanspruchen. Mithilfe der mitgelieferten Hilfsprogramme für die Protokollrotation (newsyslog) können Sie diese Protokolle konsistent verwalten, indem Sie zur einfacheren Verwaltung und Verwaltung nur relevante Informationen speichern.

Das in der NetScaler-Firmware enthaltene newsyslog Dienstprogramm archiviert Protokolldateien und rotiert die Systemprotokolle, sodass das aktuelle Protokoll während der Rotation leer ist. Das System-Crontab führt dieses Dienstprogramm stündlich aus und liest die Konfigurationsdatei, in der die zu rotierenden Dateien und die Bedingungen angegeben sind. Die archivierten Dateien können bei Bedarf komprimiert werden.

Die bestehende Konfiguration befindet sich in /etc/newsyslog.conf. Da sich diese Datei jedoch im Speicherdateisystem befindet, muss der Administrator die Änderungen speichern, /nsconfig/newsyslog.conf damit die Konfiguration den Neustart des NetScaler übersteht.

Die in dieser Datei enthaltenen Einträge haben das folgende Format: logfilename [owner:group] mode count size when flags [/pid_file] [sig_num]

Hinweis:

Felder in eckigen Klammern sind optional und können weggelassen werden.

Jede Zeile in der Datei steht für eine Protokolldatei und die Bedingungen, unter denen die Rotation erfolgen muss.

Im Beispiel gibt das Feld size an, dass die Größe von ns.log 100 Kilobyte ist. Das Feld count gibt an, dass die Anzahl der archivierten ns.log-Dateien 25 ist. Eine Größe von 100 K und eine Anzahl von 25 sind die Standardwerte für Größe und Anzahl.

Hinweis:

Wenn das Feld mit einem Sternchen (*) konfiguriert ist, bedeutet dies, dass die Datei ns.log nicht zeitabhängig rotiert wird. Jede Stunde wird durch einen Crontab-Job das newsyslog Dienstprogramm ausgeführt, das überprüft, ob die Größe von ns.log größer oder gleich der in dieser Datei konfigurierten Größe ist. In diesem Beispiel wird die Datei gedreht, wenn sie größer oder gleich 100 K ist.

root@ns# cat /etc/newsyslog.conf
# Netscaler newsyslog.conf

# This file is present in the memory filesystem by default, and any changes
# to this file will be lost following a reboot. If changes to this file
# require persistence between reboots, copy this file to the /nsconfig
# directory and make the required changes to that file.
#
# logfilename [owner:group] mode count size when flags [/pid_file] [sig_num]
/var/log/cron 600 3 100 * Z
/var/log/amd.log 644 7 100 * Z
/var/log/auth.log 600 7 100 * Z
/var/log/ns.log 600 25 100 * Z
<!--NeedCopy-->

Das Feld sizekann geändert werden, um die Mindestgröße der Datei ns.log zu ändern, oder das Feld kann geändert werden, um die Datei ns.log basierend auf einer bestimmten Zeit zu drehen.

Die tägliche, wöchentliche und/oder monatliche Spezifikation wird wie [Dhh]folgt angegeben: bzw. [Dhh [Mdd]] Die optionalen Tageszeitfelder sind standardmäßig Mitternacht. Die Bereiche und Bedeutungen dieser Spezifikationen sind:

Hh hours, range 0 ... 23
w day of week, range 0 ... 6, 0 = Sunday
dd day of month, range 1 ... 31, or the letter L or l to specify the last day of the month.
<!--NeedCopy-->

Beispiele:

Hier sind einige Beispiele mit Erklärungen für die Protokolle, die standardmäßig rotiert werden:

/var/log/auth.log 600 7 100 * Z

Das Authentifizierungsprotokoll wird rotiert, wenn die Datei 100 K erreicht, die letzten 7 Kopien der Datei auth.log werden archiviert und mit gzip (Z-Flag) komprimiert, und den resultierenden Archiven werden die folgenden Berechtigungen zugewiesen: rw——-.

/var/log/all.log 600 7 * @T00 Z

Das Catch-All-Log wird jeden Abend um Mitternacht siebenmal rotiert (@T00) und mit gzip komprimiert. Den resultierenden Archiven werden die folgenden Berechtigungen zugewiesen —rw-r—–.

/var/log/weekly.log 640 5 * $W6D0 Z

Das wöchentliche Protokoll wird jeden Montag um Mitternacht fünfmal rotiert. Den resultierenden Archiven sind Berechtigungen zugewiesen.

Allgemeine Rotationsmuster:

  • D0. rotieren jeden Abend um Mitternacht
  • D23. jeden Tag um 23:00 Uhr rotieren
  • W0D23. rotieren Sie jede Woche am Sonntag um 23:00 Uhr
  • W5. rotieren Sie jede Woche am Freitag um Mitternacht
  • MLD6. rotieren Sie am letzten Tag eines jeden Monats um 6:00 Uhr
  • M5. rotieren an jedem fünften Tag des Monats um Mitternacht

Wenn sowohl ein Intervall als auch eine Zeitspezifikation angegeben sind, müssen beide Bedingungen erfüllt sein. Das heißt, die Datei muss mindestens so alt wie das angegebene Intervall sein und die aktuelle Uhrzeit muss der Zeitspezifikation entsprechen.

Sie können die minimale Dateigröße festlegen, es gibt jedoch keine Begrenzung der Dateigröße, bevor das newsyslog-Dienstprogramm in der nächsten Stunde an die Reihe kommt.

Newsyslog debuggen:

Um das Verhalten des newsyslog-Hilfsprogramms zu debuggen, fügen Sie das Verbose-Flag hinzu.

root@dj_ns# newsyslog -v
/var/log/cron <3Z>: size (Kb): 31 [100] --> skipping
/var/log/amd.log <7Z>: does not exist, skipped.
/var/log/auth.log <7Z>: size (Kb): 2 [100] --> skipping
/var/log/kerberos.log <7Z>: does not exist, skipped.
/var/log/lpd-errs <7Z>: size (Kb): 0 [100] --> skipping
/var/log/maillog <7Z>: --> will trim at Tue Mar 24 00:00:00 2009
/var/log/sendmail.st <10>: age (hr): 0 [168] --> skipping
/var/log/messages <5Z>: size (Kb): 7 [100] --> skipping
/var/log/all.log <7Z>: --> will trim at Tue Mar 24 00:00:00 2009
/var/log/slip.log <3Z>: size (Kb): 0 [100] --> skipping
/var/log/ppp.log <3Z>: does not exist, skipped.
/var/log/security <10Z>: size (Kb): 0 [100] --> skipping
/var/log/wtmp <3>: --> will trim at Wed Apr 1 04:00:00 2009
/var/log/daily.log <7Z>: does not exist, skipped.
/var/log/weekly.log <5Z>: does not exist, skipped.
/var/log/monthly.log <12Z>: does not exist, skipped.
/var/log/console.log <5Z>: does not exist, skipped.
/var/log/ns.log <5Z>: size (Kb): 18 [100] --> skipping
/var/log/nsvpn.log <5Z>: size (Kb): 0 [100] --> skipping
/var/log/httperror.log <5Z>: size (Kb): 1 [100] --> skipping
/var/log/httpaccess.log <5Z>: size (Kb): 1 [100] --> skipping
root@dj_ns#
<!--NeedCopy-->
Protokolldateirotation konfigurieren

In diesem Artikel