Linuxのシェルでシステムログに、loggerコマンドを使用して、メッセージを出力します。
loggerコマンドのヘルプを表示する!
loggerコマンドのヘルプを表示して、使用方法を確認します。
$ logger --help Usage: logger [options] [<message>] Enter messages into the system log. Options: -i log the logger command's PID --id[=<id>] log the given <id>, or otherwise the PID -f, --file <file> log the contents of this file -e, --skip-empty do not log empty lines when processing files --no-act do everything except the write the log -p, --priority <prio> mark given message with this priority --octet-count use rfc6587 octet counting --prio-prefix look for a prefix on every line read from stdin -s, --stderr output message to standard error as well -S, --size <size> maximum size for a single message -t, --tag <tag> mark every line with this tag -n, --server <name> write to this remote syslog server -P, --port <port> use this port for UDP or TCP connection -T, --tcp use TCP only -d, --udp use UDP only --rfc3164 use the obsolete BSD syslog protocol --rfc5424[=<snip>] use the syslog protocol (the default for remote); <snip> can be notime, or notq, and/or nohost --sd-id <id> rfc5424 structured data ID --sd-param <data> rfc5424 structured data name=value --msgid <msgid> set rfc5424 message id field -u, --socket <socket> write to this Unix socket --socket-errors[=<on|off|auto>] print connection errors when using Unix sockets --journald[=<file>] write journald entry -h, --help display this help -V, --version display version For more details see logger(1).
/var/log/messagesにログ出力する!
/var/log/messagesにログ出力します。プロセスIDを出力、プライオリティを「crit」、タグを「test.sh」、メッセージを「Test Message!」で出力します。
$ logger -ip local0.crit -t test.sh "Test Message!"
ログにメッセージが出力されていることを確認します。
$ sudo grep "Test Message!" /var/log/messages Dec 12 08:55:28 server01 test.sh[31136]: Test Message!
おわりに
loggerコマンドを使用すると、シェルのエラーなどをシステムログに容易に出力することができます。
関連記事
関連書籍(Amazon)