通过rsyslog实现Nginx日志统一收集

ryslog 是一个快速处理收集系统日志的程序,提供了高性能、安全功能和模块化设计。rsyslog 是syslog 的升级版,它将多种来源输入输出转换结果到目的地,据官网介绍,现在可以处理100万条信息。

 

Rsyslog服务端配置,配置文件/etc/rsyslog.conf

$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

$ModLoad imudp #打开ucp连接,通过ucp传日志

$UDPServerRun 514 #UDP端口514

#$ModLoad imtcp #打开tcp连接,通过tcp传日志

$InputTCPServerRun 10514 #TCP端口10514

#$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat

$IncludeConfig /etc/rsyslog.d/*.conf #可以应用的配置文件

$WorkDirectory /data/weblogs #默认的存储路径

$MainMsgQueueType LinkedList

$MainMsgQueueHighWatermark 10000

$MainMsgQueueLowWatermark 1000

$MainMsgQueueMaxDiskSpace 20g #占用磁盘总空间大小

$MainMsgQueueMaxFileSize 200m #单个文件的最大大小

$MainMsgQueueSaveOnShutdown on

$MainMsgQueueDiscardSeverity 8

$template logfile,”/data/weblogs/nginx/log_bak/%syslogtag:F,91:1%.log” #定义日志名称

$template logFormat, “%msg:2:$%\n” #定义日志内容格式

$ActionFileDefaultTemplate logFormat #定义默认的日志内容格式,需要先定义,在再这里应用

local7.* -?logfile

 

 

 

Nginx配置

server

{

listen 80;

server_name tsov.net;

index index.php;

root /www/tsov.net;

error_log /www/weblogs/tsov.net.log crit;

access_log /www/weblogs/tsov.net.log access;

access_log syslog:local7:info:192.168.11.22::learn1.game.access access;

location ~ \.php$ {

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;

include fastcgi.conf;

}

}

 

配置就这么简单,后继有空再说rsyslog的具体用法。

相关日志

发表于:2021-02-19 16:21:29 at 16:21 分类:服务器 发表评论 Tags:

发表评论

(必填)

(必填)您的电子邮箱不会被公开。

Archives