[[サーバ関連]]
目次~
#contents

*概要 [#f6771af6]
ログ転送されたログを送信元毎に振り分ける設定。~


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

**ログファイル保管の定義 [#y209abed]
-書式
 $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"

**振り分けルール [#afe06c1a]
***全てのログを振り分け [#hd4a11fc]
-書式
 :fromhost-ip, isequal, "[IP Address(完全一致)]" -?[LogFormat名]
~
--例:全てのログを[LogRule]に従い振り分ける
 *.* -?LogRule
 & ~
~

***IPアドレスを基準とした振り分けの定義(完全一致) [#ta7b7529]
-書式
 :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アドレスを基準とした振り分けの定義(前方一致) [#bd6f2b5e]
-書式
 :fromhost-ip, startswith, "[IP Address(前方一致)]" -?[LogFormat名]
~
--例:IPアドレス振り分け(192.168.230〜239のアドレス)
 :fromhost-ip, startswith, "192.168.1.23" -?LogRule
 & ~

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

***設定例 [#m27ed9cf]
以下の動作を行うローテーションの例。~

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



*設定サンプル [#ua04057e]
**rsyslogd.conf [#nf0cebd2]
***例1. 全てのログに振り分けルールを適用する [#l475dc23]
 #### 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アドレス毎に振り分ける [#k02c4064]
 ##  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