Nginx会把access和error日志记录到文件中,利用Syslog历程(如:rsyslog)可以监控这些日志而且将他们发送到Loggly中,下面就是如何利用Loggly来记载nginx的日志。本例中的rsylog利用1.19或更高版本,利用TCP 514端口,,Ubuntu上默认的Nginx日志目次和尺度的日志名目。自动安装剧本1. 运行Nginx设置剧本运行如下脚原来搭建Nginx日志并传输到Loggly上。
序列号 | CPU | RAM | HDD | 带宽 | 售价(美元) | 免费试用 |
---|---|---|---|---|---|---|
香港服务器1 | E5-2620 | 32G | 1T HDD | 50M/无限流量 | $196.00 | 立即申请 |
香港服务器2 | E5-2650 | 32G | 1T HDD | 50M/无限流量 | $256.00 | 立即申请 |
香港服务器3 | E5-2680 | 32G | 1T HDD | 50M/无限流量 | $316.00 | 立即申请 |
香港服务器4 | E5-2690 | 32G | 1T HDD | 50M/无限流量 | $336.00 | 立即申请 |
香港服务器5 | E5-2697 | 32G | 1T HDD | 50M/无限流量 | $376.00 | 立即申请 |
香港服务器6 | E5-2620*2 | 32G | 1T HDD | 50M/无限流量 | $376.00 | 立即申请 |
香港服务器7 | E5-2650*2 | 32G | 1T HDD | 50M/无限流量 | $436.00 | 立即申请 |
香港服务器8 | E5-2680*2 | 32G | 1T HDD | 50M/无限流量 | $476.00 | 立即申请 |
香港服务器9 | E5-2690*2 | 32G | 1T HDD | 50M/无限流量 | $556.00 | 立即申请 |
香港服务器10 | E5-2697*2 | 32G | 1T HDD | 50M/无限流量 | $596.00 | 立即申请 |
香港服务器11 | E5-2680v4*2 | 32G | 1T HDD | 50M/无限流量 | $696.00 | 立即申请 |
香港服务器12 | E5-2698v4*2 | 32G | 1T HDD | 50M/无限流量 | $796.00 | 立即申请 |
curl-Ohttps://www.loggly.com/install/configure-nginx.shsudobashconfigure-nginx.sh-aSUBDOMAIN-uUSERNAME
curl -O https://www.loggly.com/install/configure-nginx.sh
sudo bash configure-nginx.sh -a SUBDOMAIN -u USERNAME
说明:SUBDOMAIN 是你在Loggly上面注册的子域名USERNAME 是你的Loggly的用户名
2. 确认事件在Loggly上确认nginx标签是否已经打上。大概需要换上几分钟同步,假如没有可以凭据如下步调举办troubleshooting。tag:nginx
手动设置1. 设置Syslog Daemon
curl-Ohttps://www.loggly.com/install/configure-linux.shsudobashconfigure-linux.sh-aSUBDOMAIN-uUSERNAME
curl -O https://www.loggly.com/install/configure-linux.sh
sudo bash configure-linux.sh -a SUBDOMAIN -u USERNAME
同样:SUBDOMAIN 是你在Loggly上面注册的子域名USERNAME 是你的Loggly的用户名
2. 设置Nginx文件监控建设可能打开rsyslog设置文件:
sudovim/etc/rsyslog.d/21-nginx-loggly.conf
sudo vim /etc/rsyslog.d/21-nginx-loggly.conf
将下面的部门添加进去:
$ModLoadimfile$InputFilePollInterval10$PrivDropToGroupadm$WorkDirectory/var/spool/rsyslog#Nginxaccessfile:$InputFileName/var/log/nginx/access.log$InputFileTagnginx-access:$InputFileStateFilestat-nginx-access$InputFileSeverityinfo$InputFilePersistStateInterval20000$InputRunFileMonitor#NginxErrorfile:$InputFileName/var/log/nginx/error.log$InputFileTagnginx-error:$InputFileStateFilestat-nginx-error$InputFileSeverityerror$InputFilePersistStateInterval20000$InputRunFileMonitor#Addatagfornginxevents$templateLogglyFormatNginx,"<%pri%>%protocol-version%%timestamp:::date-rfc3339%%HOSTNAME%%app-name%%procid%%msgid%[[email protected]tag="nginx"]%msg%"if$programname=='nginx-access'then@@logs-01.loggly.com:514;LogglyFormatNginxif$programname=='nginx-access'then~if$programname=='nginx-error'then@@logs-01.loggly.com:514;LogglyFormatNginxif$programname=='nginx-error'then~
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
$ModLoad imfile
$InputFilePollInterval 10
$PrivDropToGroup adm
$WorkDirectory /var/spool/rsyslog
# Nginx access file:
$InputFileName /var/log/nginx/access.log
$InputFileTag nginx-access:
$InputFileStateFile stat-nginx-access
$InputFileSeverity info
$InputFilePersistStateInterval 20000
$InputRunFileMonitor
#Nginx Error file:
$InputFileName /var/log/nginx/error.log
$InputFileTag nginx-error:
$InputFileStateFile stat-nginx-error
$InputFileSeverity error
$InputFilePersistStateInterval 20000
$InputRunFileMonitor