Syslogサーバー
rsyslogはDebian系(Ubuntuを含む)では、syslogdとしてセットアップされている。
vi /etc/init.d/rsyslog
SYSLOGD_OPTIONS="-c3"
サーバー(ログ集積)側
vi /etc/rsyslog.conf
#################
#### MODULES ####
#################
module(load="imuxsock")
# provides support for local system logging
#module(load="immark")
# provides --MARK-- message capability
# provides UDP syslog reception
module(load="imudp")
input(type="imudp" port="514")
# provides TCP syslog reception
#module(load="imtcp")
#input(type="imtcp" port="514")
# provides kernel logging support and enable non-kernel klog messages
module(load="imklog" permitnonkernelfacility="on")
###########################
# Append
###########################
module(load="builtin:omfile")
$template DynamicFileName,"/var/log/%hostname%/%$year%%$month%%$day%/%programname%/message.log"
*.* ?DynamicFileName
| ファシリティ | 用途 |
|---|---|
| msg | ログメッセージ |
| hostname | ログを出力したホストの名前 |
| fromhost | ログを受け取ったホストの名前 |
| programname | プログラム名 |
| syslogfacility | ファシリティ(数字) |
| syslogfacility-text | ファシリティ(テキスト) |
| syslogseverity | プライオリティ(数字) |
| syslogseverity-text | プライオリティ(テキスト) |
| syslogpriority | syslogseverityと同等 |
| syslogpriority-text | syslogseverity-textと同等 |
| timegenerated | ログを受け取った日時 |
| timereported | ログが出力された日時 |
| timestamp | timereportedと同等 |
| $now | 現在時刻(書式:YYYY-MM-DD) |
| $year | 現在の年(4けた) |
| $month | 現在の月(2けた) |
| $day | 現在の日(2けた) |
| $hour | 現在の時(24時間表記、2けた) |
| $minute | 現在の分(2けた) |
クライアント(ログ送信)側
vi /etc/rsyslog.d/60-remote.conf
*.* @サーバーアドレス:514
もしくは
*.* @FQDN:514
>Nginxのログを転送する。
vi /etc/nginx/conf.d/remotelog.conf
access_log syslog:server=サーバー名:514,facility=local5,severity=info;
error_log syslog:server=サーバー名:514,facility=local5,severity=info;
Nginxを再起動する。
service nginx restart(2).gif)