rsyslog7 簡単な設定例
[履歴] [最終更新] (2015/04/17 09:50:11)

概要

rsyslog (rocket-fast system for log processing) は汎用のログ管理システムです。入力を指定しておき、用意したフィルターに合致したログを所望の場所に出力します。ここでは v7 を扱います。

インストール

CentOS 6 の場合について v7 をインストールする手順を示します。他の OS などについてはこちらをご覧ください。

$ sudo yum remove rsyslog
$ sudo yum install rsyslog7 sysstat
$ sudo service rsyslog start
$ sudo chkconfig rsyslog on
$ sudo chkconfig --list | grep syslog
rsyslog   0:off  1:off  2:on  3:on  4:on  5:on  6:off

設定例

設定ファイル生成ツールを用いると簡易な手続で設定ファイルの雛形を生成できます。例えば /tmp/myfile を入力として、特にフィルタリングせずにすべてを /var/log/myapp.log に出力するように設定すると以下のようなテンプレートが生成されます。

入力

Uploaded Image

出力

Uploaded Image

全体

Uploaded Image

生成結果

# This configuration has been generated by using the 
# rsyslog Configuration Builder which can be found at: 
# http://www.rsyslog.com/rsyslog-configuration-builder/
#
# Default Settings

# Load Modules
module(load="imfile")

# rsyslog Templates

# rsyslog Input Modules
input(type="imfile" 
     File="/tmp/myfile"
     Tag="myapp"
     StateFile="mystatefile"
     Severity="info"
     Facility="user"
     ruleset="myRuleSet")

# rsyslog RuleSets
ruleset(name="myRuleSet") { 
    action(type="omfile" 
        File="/var/log/myapp.log")

}

# Default RuleSet

# This configuration was generated on '2015-04-16 15:40:11'

これを /etc/rsyslog.conf の末尾に追記します。

$ sudo vim /etc/rsyslog.conf  ← 上書きではなく末尾に追記
$ sudo service rsyslog restart

すると、例えば

$ vim /tmp/myfile

と編集すると、ログファイルが更新されます。

$ sudo tail /var/log/myapp.log
Apr 16 15:46:55 vagrant myapp 123456789
Apr 16 15:47:25 vagrant myapp aa
Apr 16 15:47:25 vagrant myapp bbb
関連ページ