Nginx访问日志

(1)日志格式定义

[root@wjh1 ~]# vi /usr/local/nginx/conf/nginx.conf #打开nginx主配置文件#

找到

log_format combined_realip '$remote_addr $http_x_forwarded_for [$time_local]'

'$host "$request_uri" $status'

'"$http_referer" "$http_user_agent"';

combined_realip #日志格式名可自定义# '$remote_addr #访问地址# $http_x_forwarded_for #访问的代理IP#

[$time_local]'#访问时间# '$host#域名# "$request_uri" #请求的uri# $status#状态码# $http_referer #referer#

$http_user_agent #浏览器标识#

#定义访问日志路径及记录日志的格式

access_log /tmp/access.log wjh;

(2)错误日志 error_log 日志级别

error_log 级别分为 debug, info, notice, warn,error, crit 默认为 crit, 该级别在日志名后边定义格式如下:

error_log /your/path/error.log crit; #指定路径+日志级别#

crit 记录的日志最少,而 debug 记录的日志最多,调成warn基本上就可以,调成 error 级别时,错误日志记录的内容会更加丰富。

 

(3)某些类型的文件不记录日志

[root@wjh2 ~]# vi /usr/local/nginx/conf/vhosts/discuz.conf #打开虚拟主机配置文件#

#访问日志不记录某些类型的文件

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css)$ #匹配这些格式#

{

access_log off; #访问日志不记录#

}

#访问日志不记录某些目录下类型的文件

location ~ static #匹配static目录#

{

access_log off;

}

location ~ (static|cache) #匹配static和cache目录#

{

access_log off;

}



(2)日志切割脚本

root@wjh-01 ~]# vim /usr/local/sbin/nginx_log_rotate.sh

#! /bin/bash

## 假设nginx的日志存放路径为/tmp/

d=`date -d "-1 day" +%Y%m%d`

logdir="/tmp/"

nginx_pid="/usr/local/nginx/logs/nginx.pid"

cd $logdir

for log in `ls *.log`

do

mv $log $log-$d

done

/bin/kill -HUP `cat $nginx_pid`

 

 

转载于:https://my.oschina.net/u/3760338/blog/1602376

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值