サーバ関連 目次

概要

ログ転送されたログを送信元毎に振り分ける設定。

振り分け定義

サーバ側が受信したログを振り分けて保管する場合の設定。
ログファイルの保管ルールを定義した後、振り分けルールと保管ルールを紐付けた設定を行う。

ログファイル保管の定義

  • 書式
    $template [LogFormat名],"/[PATH]/[FILE NAME]"

    • 例:ログフォーマット(/data-syslog/syslog/[IP Address]_[HostName]/[YYYY]/[IP Address]_[HostName].YYYY-MM.messages.log)
      $template HostIP-Logs, "/data-syslog/syslog/%fromhost-ip%_%fromhost%/%$year%/%fromhost-ip%_%fromhost%.%$year%-%$month%.messages.log"

    • 例:ログフォーマット(/data-syslog/syslog/[IP Address]_[HostName]/[IP Address]/[IP Address].messages.log)
      $template HostIP-Logs,"/data-syslog/syslog/%fromhost-ip%/%fromhost-ip%_messages.log"

振り分けルール

全てのログを振り分け

  • 書式
    :fromhost-ip, isequal, "[IP Address(完全一致)]" -?[LogFormat名]

    • 例:全てのログを[LogRule]に従い振り分ける
      *.* -?LogRule
      & ~

IPアドレスを基準とした振り分けの定義(完全一致)

  • 書式
    :fromhost-ip, isequal, "[IP Address(完全一致)]" -?[LogFormat名]

    • 例:IPアドレス振り分け(192.168.230のアドレスを[LogRule]に従い振り分ける)
      :fromhost-ip, isequal, "192.168.1.230" -?LogRule
      & ~

    • 例:IPアドレス振り分け除外(192.168.230のアドレス以外を[LogRule]に従い振り分ける)
      :fromhost-ip, !isequal, "192.168.1.230" -?LogRule
      & ~

IPアドレスを基準とした振り分けの定義(前方一致)

  • 書式
    :fromhost-ip, startswith, "[IP Address(前方一致)]" -?[LogFormat名]

    • 例:IPアドレス振り分け(192.168.230〜239のアドレス)
      :fromhost-ip, startswith, "192.168.1.23" -?LogRule
      & ~

ログローテーション

rsyslogdを使用してもローテーションに近い動きは出来るが、緻密な制御を行うにはlogrotateを使用する方が適切である。

設定例

以下の動作を行うローテーションの例。

  • 動作
    • /data-syslog/syslog配下のログ(*.log)を対象とする
    • 月次でローテーションする
    • ログ圧縮する
    • ローテーション時には圧縮せずリネームのみ。次回のローテーションで圧縮する
    • ログファイルが存在しない場合も処理を続行
    • 空のログファイルはローテーションしない
    • 処理実行後にrsyslogdをリロード(ファイルのinodeを掴む問題を解消)

  • /etc/logrotate.d/remote-syslog
    /data-syslog/syslog/*/*.log
    {
       monthly
       rotate 12
       compress
       delaycompress
       missingok
       notifempty
       sharedscripts
       postrotate
           /bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
       endscript
    }

設定サンプル

rsyslogd.conf

例1. 全てのログに振り分けルールを適用する

#### MODULES ####

$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)
$ModLoad imklog   # provides kernel logging support (previously done by rklogd)
#$ModLoad immark  # provides --MARK-- message capability

# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514


#### GLOBAL DIRECTIVES ####

$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
#$ActionFileEnableSync on
# Include all config files in /etc/rsyslog.d/
$IncludeConfig /etc/rsyslog.d/*.conf


#### RULES ####

##
## Log Rules
##

$template HostIP-Logs,"/data-syslog/syslog/%fromhost-ip%/%fromhost-ip%_messages.log"

##
## Remote Log
##

*.* -?HostIP-Logs
& ~

例2. IPアドレス毎に振り分ける

##  Provides UDP syslog reception
##

$ModLoad imudp
$UDPServerRun 514

# Restrict incoming source IP address(UDP)
#
$AllowedSender UDP, 10.0.0.0/8

## Provides TCP syslog reception
##

$ModLoad imtcp
$InputTCPServerRun 514

# Restrict incoming source IP address(TCP)
#
$AllowedSender TDP, 10.0.0.0/8

#### TEMPLATE ####

## Log Format Template

$template TraditionalFormat,"%timestamp% %hostname% %syslogtag%%msg%:::drop-last-lf%\n"

## File Format Template

# Base Template
$template DynamicFileName1,"/data-syslog/syslog/%fromhost-ip%_%fromhost%/%fromhost-ip%_%fromhost%.messages.log"
$template DynamicFileName2,"/data-syslog/syslog/%fromhost-ip%_%fromhost%/%fromhost-ip%_%fromhost%.%programname%.messages.log"

# Year/Month/Day Template
$template MonthFiles1,"/data-syslog/syslog/%fromhost-ip%_%fromhost%/%$year%/%fromhost-ip%_%fromhost%.%$year%-%$month%.messages.log"
$template MonthFiles2,"/data-syslog/syslog/%fromhost-ip%_%fromhost%/%$year%/%fromhost-ip%_%fromhost%.%$year%-%$month%.%programname%.log"

#### RULES ####

##
## IP Level rules
##

## 192.168.23x
:fromhost-ip, startswith, "192.168.1.23" -?MonthFiles2
& ~

## 192.168.1.xxx
:fromhost-ip, startswith, "192.168.1." -?MonthFiles1
& ~

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-04-25 (火) 04:35:19 (30d)