sdwdateを使用しているときにsystemdジャーナルのsystemdの「時刻が変更されました」メッセージスパムを無効にする方法


10

デフォルトでsystemdを使用するDebianストレッチとsdwdateSlow Clock Adjustergh)を使用)の併用により、システムクロックが頻繁に変更されます。

その結果journalctl -f、無限にスパム送信されます。

[...]
Nov 07 13:46:49 host systemd[766]: Time has been changed
Nov 07 13:46:50 host systemd[766]: Time has been changed
Nov 07 13:46:51 host systemd[766]: Time has been changed
[...]

これは、sysvinitを使用したDebian wheezyの問題ではありませんでした。

Time has been changedメッセージをジャーナルに送信しないようにsystemdを構成するにはどうすればよいですか?

関連質問Debian jessieの/ var / log / syslogでsystemdの「時刻が変更されました」というメッセージスパムを無効にする方法は?解決されましたが、その解決策はここでは機能しません。


systemdタイマーを深く気にします。これは、ハードウェアクロックを更新することでトリガーされたようhwclock --systohcです。
mr.spuratic 2014

リンクされたソースを見る@ mr.spuratic、それはまさに何が起こっているようです。
Dan Getz

はい、それは遅いクロック調整(sclockadj)が行っていることです。@ mr.spuratic
adrelanos 2014

1
systemd機能のリクエスト:option to disable systemd's “Time has been changed” message spam in journal log github.com/systemd/systemd/issues/5207
adrelanos

回答:


10

メッセージはsrc/core/manager.csystemdソースから来ています。INFOシステムのログレベルを使用するようにハードコードされています。

デフォルトでは、systemdはINFOレベルのメッセージをログに記録します(次のように変更して変更できる場合)/etc/systemd/system.conf

LogLevel=notice

ただし、他の多くの情報メッセージも失われます。

パッチsrc/core/manager.cを読んで読むのがベストかもしれません:

 log_struct(LOG_DEBUG,
            MESSAGE_ID(SD_MESSAGE_TIME_CHANGE),
            "MESSAGE=Time has been changed",
            NULL);

LOG_DEBUGは次に高く、で最も高いレベルとして定義されていますsys/syslog.h)、またはメッセージ全体をコメント化します。

最小サイズがX秒のタイマーの変更のみを報告する方法が見つかりませんでした。しかし、それが可能であれば、それは間違いなく、より複雑でエラーを起こしやすいパッチになるでしょう。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.