In der Konsolen-App werden nur einige system.log.${i}.gzarchivierte Protokolldateien angezeigt, die nur Informationen zu den letzten 10 bis 15 Tagen enthalten. Wie werden alle Protokolle für immer irgendwo archiviert?
Verwenden Sie einen dedizierten Syslog-Server und senden Sie die Protokolle dorthin. Ändern Sie alternativ die Protokollrotation, um niemals etwas zu löschen.
John Keates
Sie könnten mir einen Terminalbefehl / Artikel geben, der genau das erklärt Alternatively, change the log rotation to never delete anything.:?
Myhau
2
So können Sie syslog so konfigurieren, dass Daten an einen dedizierten Syslog-Server gesendet werden: wiki.splunk.com/… Und wenn Sie anscheinend (laut einer schnellen DuckDuckGo-Suche) mit der Protokollrotation spielen möchten, möchten Sie sich / etc / asl ansehen .conf und man asl.conf. Ich kenne asl nicht, daher weiß ich nicht, wie es funktioniert, aber wenn ich mir die Datei und die Manpage ansehe, kann ich mir vorstellen, dass das ziemlich schnell herausgefunden werden kann.
Harv
Antworten:
6
Die Protokolldateien werden gedreht und schließlich vom ASL-System entfernt. Sie können die Konfiguration ändern, indem Sie /etc/asl.conf unter sudo bearbeiten. Starten Sie Terminal.app und geben Sie den folgenden Befehl ein:
sudo -e /etc/asl.conf
Dort finden Sie einen Kommentar, der besagt, dass die Regeln für /var/log/system.log befolgt werden. Die erste Zeile sieht folgendermaßen aus:
Dies bedeutet, dass jede einzelne Protokolldatei maximal 5 MB groß ist. Normalerweise entfernt das ASL-System Protokolldateien, wenn sie entweder das all_max-Limit überschreiten (vor 50 Megabyte, jetzt 9999 Gigabyte) oder wenn die Datei älter als TTL-Tage (vor 7 Tagen, jetzt 99999 Tage) ist.
Verwenden Sie diese Option nicht sudo, um einen Editor nur zum Bearbeiten einer Datei auszuführen, für deren Schreiben erweiterte Berechtigungen erforderlich sind. Aus Sicherheitsgründen sollten Sie die Menge des Codes, den Sie als Root ausführen, einschränken. Verwenden Sie stattdessen, um sudo -e …die Datei zu kopieren /tmpund Ihren Editor zu starten. Wenn Sie den Editor verlassen, sudowird die Datei zurückkopiert. Weitere Informationen finden Sie in der Manpage <x-man-page: // 8 / sudo>.
Chris Seite
Es sei darauf hingewiesen, dass das Anwachsen des system.log auf eine sehr große Größe sich auf die Leistung Ihres Mac auswirkt. Das Schreiben in große Dateien dauert länger als in kleine.
benwiggy
@benwiggy Nicht wirklich, nein? - Das Anhängen an eine sehr große Datei ist nicht langsamer als das Anhängen an eine kleinere Datei. In jedem Fall ist dies hier nicht relevant, da die Dateien nach dieser Änderung nicht größer als zuvor sind.
Alternatively, change the log rotation to never delete anything.
:?Antworten:
Die Protokolldateien werden gedreht und schließlich vom ASL-System entfernt. Sie können die Konfiguration ändern, indem Sie /etc/asl.conf unter sudo bearbeiten. Starten Sie Terminal.app und geben Sie den folgenden Befehl ein:
Dort finden Sie einen Kommentar, der besagt, dass die Regeln für /var/log/system.log befolgt werden. Die erste Zeile sieht folgendermaßen aus:
Ändern Sie das so:
Dies bedeutet, dass jede einzelne Protokolldatei maximal 5 MB groß ist. Normalerweise entfernt das ASL-System Protokolldateien, wenn sie entweder das all_max-Limit überschreiten (vor 50 Megabyte, jetzt 9999 Gigabyte) oder wenn die Datei älter als TTL-Tage (vor 7 Tagen, jetzt 99999 Tage) ist.
quelle
sudo
, um einen Editor nur zum Bearbeiten einer Datei auszuführen, für deren Schreiben erweiterte Berechtigungen erforderlich sind. Aus Sicherheitsgründen sollten Sie die Menge des Codes, den Sie als Root ausführen, einschränken. Verwenden Sie stattdessen, umsudo -e …
die Datei zu kopieren/tmp
und Ihren Editor zu starten. Wenn Sie den Editor verlassen,sudo
wird die Datei zurückkopiert. Weitere Informationen finden Sie in der Manpage <x-man-page: // 8 / sudo>.