Dies ist ein merkwürdiges Problem.
Ich habe die chrony / ntp-Dienste auf einer RHEL7-VM getestet und deren Zeit sowie die des Hosts zurückgesetzt. Als ich damit zufrieden war, überprüfte ich /var/log/messages
und stellte fest, dass es eine Weile nicht mehr geändert worden war.
Unabhängig davon, was ich tue, wird nichts protokolliert, außer wenn ich den rsyslog-Dienst selbst neu starte. wenn ich das tue, bekomme ich das:
Apr 15 13:59:43 mymachine1 rsyslogd: [origin software="rsyslogd" swVersion="7.4.2" x-pid="2847" x-info="http://www.rsyslog.com"] exiting on signal 2.
Apr 15 13:59:59 mymachine1 rsyslogd: [origin software="rsyslogd" swVersion="7.4.2" x-pid="2853" x-info="http://www.rsyslog.com"] start
Apr 15 14:00:11 mymachine1 rsyslogd-3000: sd_journal_get_cursor() failed: 'Cannot assign requested address'
Versuche Dinge wie logger test
nicht protokollieren, nichts anderes als die eigenen Nachrichten von rsyslog. Wenn ich rsyslog manuell mit folgenden -n -N1
Argumenten ausführe, erhalte ich:
rsyslogd: version 7.4.2, config validation run (level 1), master config /etc/rsyslog.conf
rsyslogd: End of config validation run. Bye
Es scheint nur so, als könne sich aus irgendeinem Grund nichts über rsyslog anmelden. Und eine zweite identische VM auf demselben Host (die nicht den gleichen Kreis von wiederholtem Deaktivieren von ntp durchlief, wobei das Datum mehrmals geändert und neu gestartet wurde) mit derselben rsyslog.conf-Datei protokolliert einwandfrei.
Zu diesem Zeitpunkt ist das Datum / die Uhrzeit korrekt, Chronik ist aktiviert und läuft, und ich habe mehrmals neu gestartet - nach 30 Sekunden Kernelmeldungen wird nichts anderes mehr protokolliert.
Gedanken?
/etc/rsyslog.conf
und die/etc/rsyslog.d
Verzeichnisse überprüfen . Es hört sich so an, als ob Sie nichts konfiguriert haben, um an eine bestimmte Protokolldatei weitergeleitet zu werden. Sie können auch versuchen, eine Syslog-Nachricht mitEMERG
Priorität anzugeben, um festzustellen , ob dies erfolgreich ist. Beispiel:logger -p EMERG not really an emergency
systemd
(auf die RHEL7 migriert ist, IIRC). Können Sie überprüfenjournalctl -b
, ob Ihre Protokolle in das systemd-Journal geschrieben werden?Antworten:
Keine direkte Lösung, aber ich würde das Debuggen aktivieren, um zu sehen, was hinter den Kulissen passiert.
Idee Nr. 1 - Debugging von Loggern
Für den Anfang, wenn Sie Ihre
logger
Befehle ausführen, können Sie diese wie folgt ausführen und Nachrichten an STDERR ausgeben.Idee Nr. 2 - Überprüfen Sie Ihre Konfigurationsdatei
Sie können auch versuchen, Ihre rsyslog-Konfigurationsdatei zu überprüfen:
Idee 3 - Aktivieren Sie das rsyslogd-Debugging
Außerdem würde ich versuchen, das Debuggen des
rsyslogd
Dämons zu aktivieren, um weitere Informationen zu erhalten.Versionsinformationen bestätigen
Bestätigter Fehler und eine Problemumgehung
Das OP reichte dies als Fehler bei Red Hat ein.
Der Fehler wurde wie folgt charakterisiert:
Auf die einer der Entwickler geantwortet hat:
quelle
In meinem Fall
systemctl restart systemd-journald
geholfen, weilquelle
Versuchen Sie, rsyslog conf zu überprüfen mit: rsyslogd -f /etc/rsyslog.conf -N 1
Wenn alles in Ordnung ist, versuchen Sie, systemd-journald.socket neu zu starten mit: systemctl restart systemd-journald.socket können
Sie den Befehl " logger " verwenden, um zu überprüfen ob rsyslog funktioniert oder nicht: logger "hallo"
quelle