Überblick über die Systemprotokollierung
SUMMARY In diesem Abschnitt werden die Systemprotokollmeldungen beschrieben, in denen der Junos OS-Prozess identifiziert wird, der für die Generierung der Meldung verantwortlich ist, und es wird eine kurze Beschreibung des aufgetretenen Vorgangs oder Fehlers bereitgestellt.
Übersicht über das Systemprotokoll
Junos OS generiert Systemprotokollmeldungen (auch Syslog-Meldungen genannt), um Ereignisse aufzuzeichnen, die auf dem Gerät auftreten, einschließlich der folgenden:
-
Routinevorgänge, wie z. B. das Erstellen einer OSPF-Protokollnachbarschaft (Open Shortest Path First) oder eine Benutzeranmeldung bei der Konfigurationsdatenbank.
-
Fehler- und Fehlerbedingungen, z. B. fehlgeschlagener Zugriff auf eine Konfigurationsdatei oder unerwartetes Schließen einer Verbindung zu einem Peerprozess.
-
Notfall- oder kritische Bedingungen, wie z. B. Ausschalten des Geräts aufgrund zu hoher Temperatur.
Jede Systemprotokollmeldung identifiziert den Junos OS-Prozess, der für die Generierung der Meldung verantwortlich ist, und enthält eine kurze Beschreibung des aufgetretenen Vorgangs oder Fehlers. Ausführliche Informationen zu bestimmten Systemprotokollmeldungen finden Sie im Systemprotokoll-Explorer.https://apps.juniper.net/syslog-explorer/
Um das Gerät für die Protokollierung von Systemmeldungen zu konfigurieren, konfigurieren Sie die syslog-Anweisung auf der Hierarchieebene [edit system].syslog (System)
In Junos OS Version 17.3R1 verarbeitet der syslog-event-Daemon den fxp0 in einer dedizierten Management-Routing-Instanz für IPv4-adressierte Remote-Hosts. In Junos OS Version 18.1R1 unterstützt der syslog-event-Daemon die IPv6-basierte Konfiguration, wenn eine Verbindung zu einem Remote-Host oder einer Archivierungs-Site hergestellt wird, und fxp0 wird in eine dedizierte Verwaltungsinstanz verschoben. In Junos OS Version 18.4R1 kann der Syslog-Client Nachrichten über jede Routing-Instanz senden, die Sie in den entsprechenden Hierarchien definieren. Siehe Routing-Instanz (Syslog).routing-instance (Syslog)
In diesem Thema werden Systemprotokollmeldungen für Junos OS-Prozesse und -Bibliotheken und nicht für die Systemprotokollierungsdienste auf einer physischen Schnittstellenkarte (Physical Interface Card , PIC) wie dem Adaptive Services PIC beschrieben.
In Junos OS Evolved verfügt jeder Knoten über das Standardtool , bei dem es sich um eine Schnittstelle zum Abrufen und Filtern des Systemjournals handelt.journalctl
Systemprotokollmeldungen werden aus dem Systemjournal extrahiert. Der Prozess läuft auf allen Knoten und ruft Ereignisse (basierend auf der Syslog-Konfiguration) aus dem Systemjournal sowie Fehlermeldungen aus den verschiedenen Anwendungen ab und leitet sie an den Prozess weiter.relay-eventd
master-eventd
Der Prozess wird auf der primären Routing-Engine ausgeführt und schreibt die Protokollmeldungen und Fehler auf die Festplatte.master-eventd
Verwenden Sie die Anwendung Systemprotokoll-Explorer , um Systemprotokollmeldungen in verschiedenen Versionen anzuzeigen oder zu vergleichen.https://apps.juniper.net/syslog-explorer/
In Junos OS Evolved gibt es keine Datei in der Backup-Routing-Engine.messages
Alle Routing-Engine-Sicherungsprotokolle befinden sich in der Datei auf dem primären Routing-Engine-Knoten.messages
Standardmäßig hängt Junos OS Evolved den Knotennamen in Systemprotokollmeldungen an den Hostnamen an. Bei Junos OS ist dies nicht der Fall. Diese Aktion sorgt dafür, dass die Systemprotokollmeldungen von Junos OS Evolved mit RFC5424 konform bleiben. Einige Überwachungssysteme identifizieren einen Junos OS Evolved-Hostnamen jedoch möglicherweise nicht richtig, da die Kombination aus Hostname und Knotenname mit keinem Hostnamen im Hostnamenbestand übereinstimmt.
Ab Junos OS Evolved Version 20.4R2 verwenden Sie den Befehl configuration mode, um eine genaue Identifizierung von Junos OS Evolved-Hostnamen in Ihrem Überwachungssystem sicherzustellen.set system syslog alternate-format
Mit diesem Befehl wird das Format der Junos OS Evolved-Systemprotokollmeldungen geändert. Der Knotenname wird dem Prozessnamen in der Nachricht vorangestellt und nicht an den Hostnamen angehängt, so dass das Überwachungssystem den Hostnamen korrekt identifizieren kann.
Beispielsweise wird in Junos OS-Systemprotokollmeldungen der Ursprungsprozess nicht in Systemprotokollmeldungen ausgegeben, die von einem FPC stammen:
user@mxhost> show log messages Dec 19 13:22:41.959 mxhost chassisd[5290]: CHASSISD_IFDEV_DETACH_FPC: ifdev_detach_fpc(0) Dec 19 13:23:22.900 mxhost fpc2 Ukern event counter Sock_tx init delayed
Junos OS Evolved-Nachrichten hängen jedoch den Knotennamen an den Hostnamen an und geben den Ursprungsprozess für Nachrichten aus, die von einem Knoten stammen, einschließlich FPCs:
user@ptxhost-re0> show log messages May 25 18:41:05.375 ptxhost-re0 mgd[16201]: UI_CHILD_STATUS: Cleanup child '/usr/sbin/dot1xd', PID 21322, status 0 May 25 18:42:34.632 ptxhost-fpc0 evo-cda-bt[14299]: Register bt.igp_misc.debug.hdr_length_cnt not found May 25 18:42:34.753 ptxhost-fpc1 evo-cda-bt[14427]: HBM: hbm_gf_register_inst May 25 18:47:14.498 ptxhost-re0 ehmd[5598]: SYSTEM_APP_READY: App is ready re0-ehmd
Wenn Sie das alternative Format für Junos OS Evolved-Systemprotokollmeldungen konfiguriert haben, würde derselbe Satz von Systemprotokollmeldungen stattdessen wie folgt aussehen, mit dem Hostnamen allein:
user@ptxhost-re0> show log messages May 25 18:41:05.375 ptxhost re0- mgd[16201]: UI_CHILD_STATUS: Cleanup child '/usr/sbin/dot1xd', PID 21322, status 0 May 25 18:42:34.632 ptxhost fpc0- evo-cda-bt[14299]: Register bt.igp_misc.debug.hdr_length_cnt not found May 25 18:42:34.753 ptxhost fpc1- evo-cda-bt[14427]: HBM: hbm_gf_register_inst May 25 18:47:14.498 ptxhost re0- ehmd[5598]: SYSTEM_APP_READY: App is ready re0-ehmd
Beginnend mit Junos OS Version 22.1R1 auf Geräten der SRX- und NFX-Serie und Junos OS Evolved Version 22.2R1 auf QFX5130-, QFX5200-, QFX5220- und QFX5700-Geräten haben wir dem Ereignis-Tag mehrere Ereignisse hinzugefügt, indem wir das Format verwenden, das eine Option () enthält, um die Ereignisse zu trennen und Systemprotokollmeldungen zu generieren.<event>UI_LOGIN_EVENT|UI_LOGOUT_EVENT</event>
|
Vor diesen Versionen verwendete das Ereignis-Tag das Format und wurde für verschiedene Kombinationen von Filtern nicht protokolliert.<event>UI_LOGIN_EVENT UI_LOGOUT_EVENT</event>
<get-syslog-events> rpc
Systemprotokollierungsfunktionen und Nachrichtenschweregrade
Tabelle 1 Listet die Junos OS-Systemprotokollierungsfunktionen auf, die Sie in Konfigurationsanweisungen auf Hierarchieebene angeben können.[edit system syslog]
Einrichtung (Anzahl) |
Art des Ereignisses oder Fehlers |
---|---|
|
Der Junos OS-Kernel führt Aktionen aus und stößt auf Fehler. |
|
Userspace, der Aktionen ausführt oder auf Fehler stößt. |
|
Das System führt Aktionen aus oder stößt auf Fehler. |
|
Authentifizierungs- und Autorisierungsversuche. |
|
FTP führt Aktionen aus oder stößt auf Fehler. |
|
Network Time Protocol führt Aktionen aus oder stößt auf Fehler. |
|
Sicherheitsrelevante Ereignisse oder Fehler. |
|
Ereignisse im Zusammenhang mit der dynamischen Flow-Erfassung. |
|
Die lokalen externen Anwendungen führen Aktionen aus oder treten auf Fehler auf. |
|
Der Firewallfilter führt Paketfilteraktionen durch. |
|
Die Packet Forwarding Engine führt Aktionen aus oder stößt auf Fehler. |
|
Die angegebene Konfiguration ist für den Routertyp ungültig. |
|
Änderungen an der Junos OS-Konfiguration. |
|
Eine Clientanwendung, z. B. ein Junos XML-Protokoll- oder NETCONF-XML-Client, gibt Befehle an der CLI-Eingabeaufforderung (Command-Line Interface) des Junos OS aus. |
Listet die Schweregrade auf, die Sie in Konfigurationsanweisungen auf Hierarchieebene angeben können.Tabelle 2[edit system syslog]
Die Stufen von bis sind in der Reihenfolge vom höchsten Schweregrad (größte Auswirkung auf die Funktionsfähigkeit) bis zum niedrigsten.emergency
info
Im Gegensatz zu den anderen Schweregraden deaktiviert die Stufe die Protokollierung einer Einrichtung, anstatt anzugeben, wie stark ein auslösendes Ereignis die Routing-Funktionen beeinträchtigt.none
Weitere Informationen finden Sie unter Deaktivieren der Systemprotokollierung einer Einrichtung.Deaktivieren der Systemprotokollierung einer Einrichtung
Wert |
Schweregrad |
Beschreibung |
---|---|---|
N/A |
|
Deaktiviert die Protokollierung der zugeordneten Einrichtung an einem Ziel. |
0 |
|
Systempanik oder andere Zustände, die dazu führen, dass der Router nicht mehr funktioniert. |
1 |
|
Bedingungen, die eine sofortige Korrektur erfordern, z. B. eine beschädigte Systemdatenbank. |
2 |
|
Kritische Bedingungen, wie z. B. harte Fehler. |
3 |
|
Fehlerzustände, die in der Regel weniger schwerwiegende Folgen haben als Fehler auf der Notfall-, Alarm- und kritischen Ebene. |
4 |
|
Bedingungen, die eine Überwachung rechtfertigen. |
5 |
|
Bedingungen, bei denen es sich nicht um Fehler handelt, die jedoch eine besondere Behandlung rechtfertigen können. |
6 |
|
Ereignisse oder fehlerfreie Bedingungen von Interesse. |
7 |
|
Umfasst alle Schweregrade. |
Standardeinstellungen für das Systemprotokoll
Tabelle 3 fasst die standardmäßigen Systemprotokolleinstellungen zusammen, die für alle Router gelten, auf denen das Junos-Betriebssystem ausgeführt wird, und gibt an, welche Anweisung in die Konfiguration aufgenommen werden soll, um den Standardwert zu überschreiben.
Einstellung |
Standard |
Überschreibende Anweisung |
Anweisungen |
---|---|---|---|
Alternative Möglichkeit für die Weiterleitung von Nachrichten an einen entfernten Computer |
Für : Für : Für : Für : Für : Für : |
[edit system syslog] host hostname { facility-override facility; } |
|
Format von Nachrichten, die in einer Datei protokolliert werden |
Standardformat von Junos OS, basierend auf dem UNIX-Format |
[edit system syslog] file filename { structured-data; } |
Protokollieren von Meldungen im Format mit strukturierten Daten |
Maximale Anzahl von Dateien im archivierten Satz |
10 |
[edit system syslog] archive { files number; } file filename { archive { files number; } } |
Angeben von Größe, Anzahl und Archivierungseigenschaften der Protokolldatei |
Maximale Größe der Protokolldatei |
M-Serie, MX-Serie und T-Serie: 1 Megabyte (MB) TX-Matrix: 10 MB |
[edit system syslog] archive { size size; } file filename { archive { size size; } } |
Angeben von Größe, Anzahl und Archivierungseigenschaften der Protokolldatei |
Format des Zeitstempels |
Monat, Datum, Stunde, Minute, Sekunde Hier einige Zahlen zum Generationswechsel: |
[edit system syslog] time-format format; |
|
Benutzer, die Protokolldateien lesen können |
Benutzer und Benutzer mit der Berechtigung "Junos OS" |
[edit system syslog] archive { world-readable; } file filename { archive { world-readable; } } |
Angeben von Größe, Anzahl und Archivierungseigenschaften der Protokolldatei |
Plattformspezifische Standard-Systemprotokollmeldungen
Die folgenden Meldungen werden standardmäßig auf bestimmten Routern generiert. Um einen dieser Meldungstypen anzeigen zu können, müssen Sie mindestens ein Ziel für Meldungen konfigurieren, wie unter Junos OS Minimum System Logging Configuration (Junos OS-Mindestkonfiguration der Systemprotokollierung) beschrieben.Junos OS-Mindestkonfiguration für die Systemprotokollierung
Um die Kernelprozessmeldung auf einem Router der M-, MX- oder T-Serie zu protokollieren, fügen Sie die Anweisung auf der entsprechenden Hierarchieebene ein:
kernel info
[edit system syslog] (console | file filename | host destination | user username) { kernel info; }
Auf einer Routing-Matrix, die aus einem TX-Matrix-Router und T640-Routern besteht, leitet die primäre Routing-Engine auf jedem T640-Router alle Nachrichten mit einem Schweregrad von und höher an die primäre Routing-Engine auf dem TX-Matrix-Router weiter.
info
Dies entspricht der folgenden Konfigurationsanweisung , die auf dem TX Matrix-Router enthalten ist:[edit system syslog] host scc-master { any info; }
Ab Junos OS Version 15.1X49-D10 und Junos OS Version 17.3R1 leitet die primäre Routing-Engine auf jedem T1600- oder T4000-LCC ebenfalls auf einer Routing-Matrix, die aus einem TX Matrix Plus-Router mit angeschlossenen T1600- oder T4000-Routern besteht, alle Nachrichten mit einem Schweregrad von und höher an die primäre Routing-Engine auf dem TX Matrix Plus-Router weiter.
info
Dies entspricht der folgenden Konfigurationsanweisung, die auf dem TX Matrix Plus-Router enthalten ist:HINWEIS:Aus der Perspektive der Benutzeroberfläche erscheint die Routing-Matrix als ein einzelner Router. Der TX Matrix Plus-Router steuert alle T1600- oder T4000-Router, die in der Routing-Matrix mit ihm verbunden sind.
[edit system syslog] host sfc0-master { any info; }
Interpretieren von Nachrichten, die im Standardformat generiert wurden
Die Syntax einer Nachricht im Standardformat, die von einem Junos OS-Prozess oder einer Unterprogrammbibliothek generiert wird, hängt davon ab, ob sie die folgenden Prioritätsinformationen enthält:
Wenn die Anweisung auf der Hierarchieebene [] oder [] enthalten ist, hat eine Systemprotokollmeldung die folgende Syntax:
explicit-priority
filenamehostnametimestamp message-source: %facility–severity–TAG: message-text
Wenn eine Systemprotokollmeldung an die Konsole oder an Benutzer gerichtet wird oder wenn die Anweisung nicht für Dateien oder Remote-Hosts enthalten ist, hat sie die folgende Syntax:
explicit-priority
timestamp message-source: TAG: message-text
Tabelle 4 beschreibt die Nachrichtenfelder.
Feld | Beschreibung |
---|---|
timestamp |
Uhrzeit, zu der die Nachricht protokolliert wurde. |
message-source |
Kennung des Prozesses oder der Komponente, der bzw. die die Nachricht generiert, und die Routing-Plattform, auf der die Nachricht protokolliert wurde. Für Junos OS enthält dieses Feld zwei oder mehr Unterfelder: Hostname, Prozess und Prozess-ID (PID). Für Junos OS Evolved enthält dieses Feld einen Hostnamen mit einem angehängten Knotennamen, einen Prozessnamen und eine PID. Wenn die Anweisung auf der Hierarchieebene [edit system syslog] auf einem Junos OS Evolved-Gerät konfiguriert wird, wird der Knotenname nicht an den Hostnamen, sondern an den Prozessnamen angehängt. hostname process[process-ID] |
facility |
Code, der die Einrichtung angibt, zu der die Systemprotokollmeldung gehört. Eine Zuordnung von Codes zu Einrichtungsnamen finden Sie in der Tabelle: Einrichtungscodes, die in Prioritätsinformationen unter Einschließen von Prioritätsinformationen in Systemprotokollmeldungen gemeldet werden.Einfügen von Prioritätsinformationen in Systemprotokollmeldungen |
severity |
Numerischer Code, der den Schweregrad darstellt, der der Systemprotokollmeldung zugewiesen ist. Eine Zuordnung von Codes zu Schweregradnamen finden Sie in der Tabelle: Numerische Codes für Schweregrade, die in Prioritätsinformationen unter Einschließen von Prioritätsinformationen in Systemprotokollmeldungen gemeldet werden.Einfügen von Prioritätsinformationen in Systemprotokollmeldungen |
TAG |
Textzeichenfolge, die die Nachricht eindeutig identifiziert, in Großbuchstaben und unter Verwendung des Unterstrichs (_) zum Trennen von Wörtern. Der Tagname beginnt mit einem Präfix, das den generierenden Softwareprozess oder die Bibliothek angibt. Die Einträge in dieser Referenz sind alphabetisch nach diesem Präfix sortiert. Nicht alle Prozesse auf einer Routing-Plattform verwenden Tags, daher wird dieses Feld nicht immer angezeigt. |
message-text |
Text der Nachricht. |
Verwalten des Hostbetriebssystems, des Systemprotokolls und der Core-Dateien
Auf Junos OS-Switches mit einem Hostbetriebssystem generiert das Junos-Betriebssystem möglicherweise Systemprotokollmeldungen (auch Syslog-Meldungen genannt), um Ereignisse aufzuzeichnen, die auf dem Switch auftreten, einschließlich der folgenden:
Routinevorgänge, z. B. die Benutzeranmeldung bei der Konfigurationsdatenbank.
Fehler- und Fehlerbedingungen.
Notfall- oder kritische Bedingungen, wie z. B. Ausschalten des Schalters aufgrund zu hoher Temperatur.
Auf Switches der OCX-Serie:
Systemprotokollmeldungen werden in den folgenden Szenarien in der Datei im Hostbetriebssystem protokolliert:/var/log/dcpfe.log
Wenn der Weiterleitungs-Daemon initialisiert wird.
Nachrichten werden als Notfall (LOG_EMERG) gekennzeichnet. Eine Kopie der Nachricht wird auch an das Verzeichnis auf dem Switch gesendet./var/log
Nachrichten von Prozessen sind auf dem Hostsystem im Verzeichnis verfügbar./var/log Systemprotokollmeldungen des Host-Chassis-Management-Prozesses werden in der Datei im Verzeichnis aufgezeichnet.lcmd.log/var/log
Auf QFX-Switches mit Host-Betriebssystem:
Das Junos-Betriebssystem und das Host-Betriebssystem zeichnen Protokollmeldungen für System- und Prozessereignisse auf und generieren Core-Dateien bei bestimmten Systemausfällen.
Diese Dateien werden in Verzeichnissen wie /var/log für Protokollmeldungen und /var/tmp oder /var/crash für Core-Dateien gespeichert, abhängig von der Art des Hostbetriebssystems, das auf dem Switch ausgeführt wird.
Zu Diagnosezwecken können Sie über die Junos OS CLI auf dem Switch auf diese Systemprotokoll- und Coredateien des Hostbetriebssystems zugreifen. Sie können auch Verzeichnisse bereinigen, in denen das Hostbetriebssystem temporäre Protokoll- und andere Dateien speichert.
Dieses Thema umfasst die folgenden Abschnitte:
- Anzeigen von Protokolldateien auf dem Hostbetriebssystem
- Kopieren von Protokolldateien vom Hostsystem auf den Switch
- Anzeigen von Core-Dateien auf dem Hostbetriebssystem
- Kopieren von Core-Dateien vom Host-System auf den Switch
- Bereinigen temporärer Dateien auf dem Hostbetriebssystem
Anzeigen von Protokolldateien auf dem Hostbetriebssystem
Geben Sie den folgenden Befehl ein, um eine Liste der auf dem Hostbetriebssystem erstellten Protokolldateien anzuzeigen:
user@switch> show app-engine logs
Kopieren von Protokolldateien vom Hostsystem auf den Switch
Geben Sie den folgenden Befehl ein, um Protokolldateien vom Hostbetriebssystem auf den Switch zu kopieren:
user@switch> request app-engine file-copy log from-jhost source to-vjunos destination
Um beispielsweise die Protokolldatei auf den Switch zu kopieren, geben Sie den folgenden Befehl ein:lcmd
user@switch> request app-engine file-copy log from-jhost lcmd.log to-vjunos /var/tmp
Anzeigen von Core-Dateien auf dem Hostbetriebssystem
Geben Sie den folgenden Befehl ein, um die Liste der Core-Dateien anzuzeigen, die auf dem Hostbetriebssystem generiert und gespeichert wurden:
user@switch> show app-engine crash
Die Liste könnte wie in der folgenden Beispielausgabe aussehen:
Compute cluster: default-cluster Compute node: default-node Crash Info ========== total 13480 -rw-r--r-- 1 root root 178046 Feb 14 23:08 localhost.lcmd.26653.1455520135.core.tgz -rw-r--r-- 1 root root 4330343 Feb 15 00:45 localhost.dcpfe.7155.1455525926.core.tgz -rw-r--r-- 1 root root 4285901 Feb 15 01:49 localhost.dcpfe.25876.1455529782.core.tgz -rw-r--r-- 1 root root 4288508 Feb 15 02:39 localhost.dcpfe.713.1455532774.core.tgz -rw-r--r-- 1 root root 264079 Feb 15 17:02 localhost.lcmd.1144.1455584540.core.tgz
Kopieren von Core-Dateien vom Host-System auf den Switch
Geben Sie den folgenden Befehl ein, um Core-Dateien vom Hostbetriebssystem auf den Switch zu kopieren:
user@switch> request app-engine file-copy crash from-jhost source to-vjunos destination-dir-or-file-path
Wenn der Junos OS-Zielpfad ein Verzeichnis ist, wird standardmäßig der Quelldateiname verwendet. Um die Datei am Ziel umzubenennen, geben Sie das Argument destination als vollständigen Pfad einschließlich des gewünschten Dateinamens ein.
Um beispielsweise die Core-Archivdatei auf den Switch zu kopieren, geben Sie den folgenden Befehl ein:localhost.lcmd.26653.1455520135.core.tgz
user@switch> request app-engine file-copy crash from-jhost localhost.lcmd.26653.1455520135.core.tgz to-vjunos /var/tmp
Um die Ergebnisse auf dem Switch anzuzeigen, geben Sie den folgenden Befehl ein:
user@switch> show system core-dumps re0: -------------------------------------------------------------------------- -rw-r--r-- 1 root field 178046 Feb 15 17:15 /var/tmp/localhost.lcmd.26653.1455520135.core.tgz total files: 1
Bereinigen temporärer Dateien auf dem Hostbetriebssystem
Geben Sie den folgenden Befehl ein, um temporäre Dateien zu entfernen, die auf dem Hostbetriebssystem erstellt wurden:
user@switch> request app-engine cleanup
Die folgende Beispielausgabe auf einem Switch mit einem Linux-Hostbetriebssystem zeigt beispielsweise die Bereinigung temporärer Dateien, die in /var/tmp gespeichert sind:
Compute cluster: default-cluster Compute node: default-node Cleanup (/var/tmp) =======
Tabellarischer Änderungsverlauf
Die Unterstützung der Funktion hängt von der Plattform und der Version ab, die Sie benutzen. Verwenden Sie Feature Explorer, um festzustellen, ob eine Funktion auf Ihrer Plattform unterstützt wird.
info