sdwdateを使用するときにsystemdログで「時間変更」スパムを無効にする方法は?

sdwdateを使用するときにsystemdログで「時間変更」スパムを無効にする方法は?

Debian Stretchで使用されるため、デフォルトではsystemdが使用されます。日付(使用低速クロックレギュレータGH))、システムクロックが頻繁に変更されます。

結果は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の「時刻変更」スパムを無効にする方法は?すでに解決されていますが、このソリューションはここでは機能しません。

答え1

からのお知らせsrc/core/manager.cシステムソースから。 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秒のタイマーの変更のみを報告する方法が見つかりませんでした。しかし、これが可能であれば、間違いなくパッチがより複雑になり、エラーが発生しやすくなります。

関連情報