Linuxコマンド辞典 loggerコマンド(システム管理)
syslogに書き込む「logger」コマンドの概要と使い方を記載しています。
RHEL Fedora CentOS Vine Deblan Ubuntu Plamo
参考サイト:Man page of INSTALL
概要・使用方法
書式
$ logger [オプション] [メッセージ・・・]
syslog、journaldにログを書き出します。テキストファイルの中身をそのままsyslogに書き出したり、プライオリティを指定し、ログに書き出すことで可能です。(syslogの設定による)。ログのプライオリティによって、「/etc/syslog.conf」で書き出すログファイルが変わってきます。プライオリティは「ファシリティ.重要度」から構成され、これらには以下のような種類があります。
ファシリティの種類
ファシリティログ | 内容 |
---|---|
auth | 認証用(login、su) |
authpriv | 認証用(login、su) |
cron | cron用 |
daemon | 各デーモン用 |
kern | カーネル用 |
lpr | カーネル用 |
メールサーバ用 | |
new | ニュースサーバ用 |
syslog | syslog用 |
user | ユーザプロセス用 |
uucp | UUCP転送用 |
ftpFTP | サービス |
syslogsyslog | 機能 |
local 0~7 | 独自の設定、アプリケーション用 |
プライオリティの種類
プライオリティ | 用途 |
---|---|
debug | デバッグ |
info | 情報 |
notice | 通知 |
warning.warn | 警告 |
error、err | エラー |
crit | 致命的エラー |
alert | 要緊急用対応 |
emerg、panic | 危険 |
メッセージを指定した場合、「/var/log/syslog(Debian/Ubuntu)」か、「/var/log/messages(CentOS/Fedora)」にメッセージを出力します。メッセージを指定しない場合は標準入力からの入力待ちになります。
オプション
-i –id | ログにloggerのプロセスIDを出力する |
-s –stderr | ログに出力して標準出力にも出力する |
-f ファイル名 –file ファイル名 | 指定したファイルの内容をログに出力する |
-p プライオリティ –priority | 指定したプライオリティでログに出力する |
-t タグ –tag タグ | ログに指定したタグを出力する |
-u ソケット –socket ソケット | syslogの代わりにソケットに出力する |
-n サーバ名 –server サーバ名 | シスログサーバにメッセージを送信する。プロトコルに指定がない場合はUDPが利用される。 |
-T –tcp | TCPを利用する。ポートの指定が無ければ601を利用する |
-d –udp | UDPを利用する。ポートの指定が無ければ512を利用する |
syslogに書き込む
$ syslog メッセージ
$ syslog "メッセージ" #単語と単語に空白が入る場合
実行結果
[sunarin@sunarin ~]$ logger "test message!"
[sunarin@sunarin ~]$ sudo tail /var/log/messages
Oct 27 10:05:57 sunarin sunarin[296263]: test message!
[sunarin@sunarin ~]$
タグを指定してsyslogに書き込む
$ syslog -t タグ メッセージ
実行結果
[sunarin@sunarin ~]$ sudo tail /var/log/messages
Oct 27 10:07:59 sunarin MYTAB[296290]: test
[sunarin@sunarin ~]$
指定したプライオリティにログを送信する
$ syslog -p ファシリティ.プライオリティ メッセージ
実行結果
[sunarin@sunarin ~]$ logger -p "syslog.info" "syslog info message"
[sunarin@sunarin ~]$ sudo tail /var/log/messages
Oct 27 10:17:15 sunarin sunarin[296455]: syslog info message
[sunarin@sunarin ~]$
テキストファイルをログに流し込む
$ syslog -t "EOL" -f テキストファイル
実行結果
[sunarin@sunarin ~]$ logger -t "EOL" -f ./msg.txt
[sunarin@sunarin ~]$ sudo tail /var/log/messages
Oct 27 10:19:10 sunarin EOL[296476]: textfile test message
[sunarin@sunarin ~]$