こんにちは、フルスタックエンジニアのryuです。
今回の記事では、Linuxのsyslogの設定方法を解説します。syslogとは、Linuxでログの出力を設定しているプログラムです。さまざまなプログラムからログデーターを受け取り、syslogによって出力されています。今回はsysylogの設定方法について詳しく解説します。
目次
syslogの設定方法とは?
syslogの設定方法はどうやってやるの?
今回の記事では、syslogの設定方法について詳しく解説します。
設定はrsyslog.conf
syslogではログの出力設定を行います。設定ファイルは。”/etc/rsyslog.conf”です。viコマンドを使用して編集してみましょう。
vi /etc/rsyslog.conf
ファイルを開くと、「MODULES」や「GLOBAL DIRECTIVES」のように設定毎で項目が分かれています。
ログの出力設定は、「RULES」の部分です。ファイルの中盤あたりまで移動しましょう。
ログの出力設定
ファイルの中盤に移動すると、ログの出力設定がいくつかの設定がされています。
###############
#### RULES ####
###############
#
# First some standard log files. Log by facility.
#
auth,authpriv.* /var/log/auth.log
*.*;auth,authpriv.none -/var/log/syslog
#cron.* /var/log/cron.log
daemon.* -/var/log/daemon.log
kern.* -/var/log/kern.log
lpr.* -/var/log/lpr.log
mail.* -/var/log/mail.log
user.* -/var/log/user.log
ログの出力は以下のように設定します。
user.* -/var/log/user.log
[ファシリティ].[プライオリティ] 出力先
ファシリティやプライオリティ、ログの出力先を指定します。ファシリティやプライオリティが何なのか分からない方のためにさらに詳しく解説します。
設定が完了したら、rsyslogファイルを再起動しましょう。
/etc/init.d/rsyslog restart
syslogファイルの設定値について
ここからは、syslogファイルの設定値について詳しく解説します。先ほどファシリティやプライオリティという言葉がありましたが、それらがどのようなものなのかも併せて解説します!
syslogのファシリティとは
syslogのファシリティとは、メッセージの出力元です。ログの種類のことです。具体的には、カーネルや実行中のプロセスになります。
ファシリティには、以下のようなものがあります。
- auth,authpriv(認証システム)
- cron(クーロン)
- deamon(デーモン)
- kern(カーネル)
- lpr(印刷システム)
- mail(メールシステム)
- syslog(syslog機能)
- local0~local7(独自の設定)
「*」を使うと全てのファシリティという意味になります。
syslogのプライオリティとは
プライオリティとは、メッセージの優先度です。エラーのレベルやシステムの情報などのログを分類することができます。
プライオリティは以下のようなものがあります。
- emerg(危機的状況
- alert(早急に対処が必要)
- crit(危険な状態)
- error(エラー)
- warning(警告)
- notice(重要な通知)
- info(システムからの情報)
- debug(デバッグ情報)
- none(ファシリティは無効)
上からファシリティが高いものとなり、システムが稼働するに当たり重要な順でログを表示します。
syslogの出力先
最後に出力先です。出力先には、ファイル名やリモートのホスト名を記入します。
出力先には、以下のものが設定できます。
ファイル名 | ファイルにログを出力する |
@[ホスト名] | リモートのホストにsyslogを出力する |
ユーザー名 | ユーザーの端末にログを出力する *を指定すると全ユーザーに出力 |
/dev/console | コンソールに出力する |
また、ファイル名の先頭に「-」を付けると、書き込み後に記憶しなくなります。書き込み負荷が下がりますが、障害が発生した場合にログな残らなくなる可能性があるので注意しましょう。
syslogの設定方法まとめ
今回の記事では、syslogの設定方法を解説しました。振り返りですが、syslogは以下のように設定します。
user.* -/var/log/user.log
[ファシリティ].[プライオリティ] 出力先
ファシリティやプライオリティを設定して、適切なログの管理を行いましょう!
このようなインフラエンジニアに必要な知識を当ブログでは、紹介しているので興味のある方は是非ご覧ください。
さらにlinuxについて勉強したい方はこちらの参考書がオススメです。