InfraAcademy

InfraAcademy Blog

【Linux】syslogの設定方法とは?Linuxでログの出力設定を変更する方法解説

| #Linux #Linux初心者 #Linux入門
Linuxをブラウザで試してみる

Linux・ネットワーク・AWSを、環境構築なしで実践学習できます

こんにちは、フルスタックエンジニアのryuです。

今回の記事では、Linuxのsyslogの設定方法を解説します。syslogとは、Linuxでログの出力を設定しているプログラムです。さまざまなプログラムからログデーターを受け取り、syslogによって出力されています。今回はsysylogの設定方法について詳しく解説します。

syslogの設定方法とは?

syslogの設定方法はどうやってやるの?

今回の記事では、syslogの設定方法について詳しく解説します。

設定はrsyslog.conf

syslogではログの出力設定を行います。設定ファイルは。”/etc/rsyslog.conf”です。viコマンドを使用して編集してみましょう。

vi /etc/rsyslog.conf

ファイルを開くと、「MODULES」や「GLOBAL DIRECTIVES」のように設定毎で項目が分かれています。

rsyslogファイル ログの出力設定は、「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について勉強したい方はこちらの参考書がオススメです。

Next Action

記事で読んだ内容を、講座で実装してみましょう

InfraAcademyでは、ブラウザ上でLinuxやネットワークの実践環境を使いながら学習できます。無料で始められる講座から、学習の流れを試せます。

この記事を書いた人

ryu

InfraAcademy運営 / エンジニア

エンジニア歴10年。Linux、ネットワーク、クラウドを中心に、実務で役立つインフラ技術を初心者にもわかりやすく解説しています。

X: @ryu63614894

Related

関連記事

ブログ一覧へ

Roadmap

まずはこの4講座から

ログインすれば無料で始められる講座です。気になったテーマから手を動かして学べます。

講座一覧を見る