harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

CentOS GNU/Linux 運用

[CentOS7] user.slice 由来で出力される大量のログを抑制する

投稿日:2017年7月25日

 
社内のバッチ用途で、久々にオンプレのサーバにCentOS7を入れてセットアップをしていたら/var/log/messagesにuser.sliceのメッセージが短時間で大量に出ていた。
ここんとこサーバ使うときもEC2どっぷりなうえ、ElasticBeansTalkにAutoScaling運用に慣れてしまって、サーバを1からちゃんと立ててないからか、こういうの知らなかった…(という言い訳。いかーん汗)

	Jul 25 16:40:01 [localhost] systemd: Created slice User Slice of root.
	Jul 25 16:40:01 [localhost] systemd: Starting User Slice of root.
	Jul 25 16:40:01 [localhost] systemd: Started Session 274 of user root.
	Jul 25 16:40:01 [localhost] systemd: Starting Session 274 of user root.
	Jul 25 16:40:02 [localhost] systemd: Removed slice User Slice of root.
	Jul 25 16:40:02 [localhost] systemd: Stopping User Slice of root.
	Jul 25 16:50:01 [localhost] systemd: Created slice User Slice of root.
	Jul 25 16:50:01 [localhost] systemd: Starting User Slice of root.
	Jul 25 16:50:01 [localhost] systemd: Started Session 275 of user root.
	Jul 25 16:50:01 [localhost] systemd: Starting Session 275 of user root.
	Jul 25 16:50:01 [localhost] systemd: Removed slice User Slice of root.
	Jul 25 16:50:01 [localhost] systemd: Stopping User Slice of root.
	Jul 25 16:55:01 [localhost] systemd: Created slice User Slice of pcp.
	Jul 25 16:55:01 [localhost] systemd: Starting User Slice of pcp.
	Jul 25 16:55:01 [localhost] systemd: Started Session 276 of user pcp.
	Jul 25 16:55:01 [localhost] systemd: Starting Session 276 of user pcp.
	Jul 25 16:55:01 [localhost] systemd: Removed slice User Slice of pcp.
	Jul 25 16:55:01 [localhost] systemd: Stopping User Slice of pcp.
	Jul 25 16:58:01 [localhost] systemd: Created slice User Slice of pcp.
	Jul 25 16:58:01 [localhost] systemd: Starting User Slice of pcp.

…以降もズラズラと出力。

と思ったら通常のメッセージとして出力されるものらしい。

参考:お世話になっております。
systemd メッセージ Created slice & Starting Session でログがあふれる

セキュリティを考えたら必要なログ何だろうと思うが、”ユーザーがログインするたびに表示されます”という割には
実際にログインしているわけでもないのに何なのか?出力行数が多すぎる!
とにかくウザい、ということで上記のRedHatのページで紹介されている手順でrsyslogにてフィルターを作成して適用する、という方法を実施。

1.コンフィグファイルの作成

	# echo 'if $programname == "systemd" and ($msg contains "Starting Session" or $msg contains "Started Session" or $msg contains "Created slice" or $msg contains "Starting user-" or $msg contains "Starting User Slice of" or $msg contains "Removed session" or $msg contains "Removed slice User Slice of" or $msg contains "Stopping User Slice of") then stop' >/etc/rsyslog.d/ignore-systemd-session-slice.conf

 

2.作成したファイルの確認

	# cat /etc/rsyslog.d/ignore-systemd-session-slice.conf
	if $programname == "systemd" and ($msg contains "Starting Session" or $msg contains "Started Session" or $msg contains "Created slice" or $msg contains "Starting user-" or $msg contains "Starting User Slice of" or $msg contains "Removed session" or $msg contains "Removed slice User Slice of" or $msg contains "Stopping User Slice of") then stop

 

3.rsyslogdを再起動

	# systemctl restart rsyslog.service

 

4.再起動後にステータス確認

	# systemctl status crond.service 
	● crond.service - Command Scheduler
	   Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
	   Active: active (running) since 火 2018-07-24 16:16:02 JST; 1 day 1h ago
	 Main PID: 1135 (crond)
	   CGroup: /system.slice/crond.service
	           └─1135 /usr/sbin/crond -n

	 7月 24 16:16:02 intra-001 systemd[1]: Started Command Scheduler.
	 7月 24 16:16:02 intra-001 systemd[1]: Starting Command Scheduler...
	 7月 24 16:16:02 intra-001 crond[1135]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 23% if used.)
	 7月 24 16:16:03 intra-001 crond[1135]: (CRON) INFO (running with inotify support)
	 7月 25 17:41:01 intra-001 crond[1135]: (*system*) RELOAD (/etc/crontab)
	 7月 25 17:42:01 intra-001 crond[1135]: (*system*) RELOAD (/etc/crontab)

5.追加分書式

上記の手順および設定によりログ出力の抑制を確認したが、一部“system-logind”のログが残っていた。

↓こんなやつ

	Jul 25 17:50:09 [localhost] systemd-logind: New session 289 of user admin.
	Jul 25 17:50:44 [localhost] systemd-logind: New session 290 of user admin.
	Jul 25 17:50:58 [localhost] systemd-logind: Removed session 290.
	Jul 25 17:51:04 [localhost] systemd-logind: Removed session 289.
	Jul 25 18:11:13 [localhost] systemd-logind: New session 296 of user admin.
	…以下ダラダラ続くw

これはsystemdとは別口になるのと、user.sliceと比べてウザくない(謎)ので残しておいてもいいかな?と思ったが、もともと/var/log/secureでアクセスと認証の履歴は残っているし、やっぱり要らないか、ということでこちらも出力を停止することに。
system-logindのすべてのログを抑制する必要は無いので、systemdと同じく”or $msg contains~” 書式で手作業で設定を追加。

	if $programname == "systemd-logind" and ($msg contains "New session" or $msg contains "Removed session") then stop

上記を/etc/rsyslog.d/ignore-systemd-session-slice.confへ追加し、再度rsyslogdをrestartし、抑制OK。
(てか、明示的にフィルターを作成しないと抑制できないってめんどい…)

-CentOS, GNU/Linux, 運用
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


関連記事

[nagios]nrpe.cfgのパラメーター一覧

RPM版nrpeでインストールされるnrpe.cfgのパラメーター一覧と説明書き。デフォルトの設定値つき。 結構適当な解釈をしちゃってるかもなので、ご指摘、ツッコミお待ちしておりますw log_fac …

no image

courier-mta+phpcourier

courier-mta+phpcourier 参照サイト 構築環境 パッケージのビルドとインストール 環境設定[初期設定] 設定DBの更新 デーモン設定 Maildir設定 phpcourierのイン …

nagios​/tipやメモ

&topicpath; 1)var/以下のファイル ファイル一覧 nagiosのイベントログの格納場所 2)インシデント、あるいはチケットオプションはあるか? 3)nagiosのフロントエンド …

no image

[MySQL] Percona xtrabackupを試す(Ver2.0.8)リストア編

percona xtrabackupを使って作成したバックアップファイルをリストアする方法。 バックアップを取ったらリストアを検証しなくちゃね、ということで早速インスタンスをコピーして試してみることに …

no image

備忘録:logrotateのデバッグモード

logrotateのデバッグモード 実際の処理をトレースする。 オプション”-dv”を忘れやすいのでメモ… # logrotate -dv <logrotate.conf …