ブログ

loggerコマンドを使用してログを出力する方法

at_shiita.ishigaki
2022年1月21日 8時54分

loggerコマンドを使用して、ログを出力する方法について紹介します。
以下のコマンドを実行することで、/var/log/messagesにログを出力することができます。

[armadillo ~]# logger "hello"
[armadillo ~]# tail /var/log/messages
Nov  4 02:16:52 armadillo kernel: [   15.325183] awl13: WID_STATUS CODE=1 (OK)
Nov  4 02:17:04 armadillo kernel: [   27.041305] awl13: WID_STATUS CODE=1 (OK)
Nov  4 02:17:16 armadillo kernel: [   38.749307] awl13: WID_STATUS CODE=1 (OK)
Nov  4 02:17:16 armadillo kernel: [   38.775411] awl13: WID_STATUS CODE=1 (OK)
Nov  4 02:17:16 armadillo kernel: [   38.830671] awl13: WID_STATUS CODE=1 (OK)
Nov  4 02:17:16 armadillo kernel: [   38.836273] awl13: WID_STATUS CODE=1 (CONNECTED)
Nov  4 02:17:16 armadillo kernel: [   38.843633] awl13: connected!
Nov  4 02:17:26 armadillo kernel: [   49.332310] random: crng init done
Nov  4 02:17:26 armadillo kernel: [   49.335757] random: 6 urandom warning(s) missed due to ratelimiting
Nov  4 03:10:54 armadillo root: hello

ログの出力先を変更するには-pオプションを使用します。-pオプションを使用した場合は重要度を指定する必要があります。
※ここでは例として、/var/log/userに重要度 debugとしてログを出力します。

[armadillo ~]# logger -p user.debug "hello"
[armadillo ~]# cat /var/log/user.log
Nov  4 02:16:48 armadillo ifupdown-hotplug[260]: Bad ifupdown udev helper invocation: $INTERFACE is not set
Nov  4 02:16:48 armadillo ifupdown-hotplug[244]: Bad ifupdown udev helper invocation: $INTERFACE is not set
Nov  4 02:16:48 armadillo ifupdown-hotplug[255]: Bad ifupdown udev helper invocation: $INTERFACE is not set
Nov  4 03:27:43 armadillo root: hello

タグを変更するには-tオプションを使用します。

[armadillo ~]# logger -t test -p user.debug "hello"
Nov  4 02:16:48 armadillo ifupdown-hotplug[260]: Bad ifupdown udev helper invocation: $INTERFACE is not set
Nov  4 02:16:48 armadillo ifupdown-hotplug[244]: Bad ifupdown udev helper invocation: $INTERFACE is not set
Nov  4 02:16:48 armadillo ifupdown-hotplug[255]: Bad ifupdown udev helper invocation: $INTERFACE is not set
Nov  4 03:27:43 armadillo root: hello
Nov  4 03:45:16 armadillo test: hello