您的位置:首页 > 运维架构 > Nginx

nginx日志配置及进行日志分割

2013-01-21 17:46 253 查看
由于nginx不能进行每天轮换来生成新的日志,因此需要编写脚本来生成每天的日志文件。

其脚本如下:

#!/bin/bash

logs_path="/nginx/logs/"

mv ${logs_path}access.log ${logs_path}access_$(date -d "yesterday" +"%Y%m%d").log

kill -USR1 `cat /nginx/logs/nginx.pid`


然后将其加入到crontab中

1 0 * * * sh /usr/local/cut_nginx_log.sh

这样就每天的0点1分把nginx日志重命名为日期格式,并重新生成今天的新日志文件。


其日志格式配置如下:

log_format main '$remote_addr - $remote_user [$time_local] "$request" '

'$status $request_length $body_bytes_sent "$http_referer" '

'"$http_user_agent" "$http_x_forwarded_for"';


说明如下:

$remote_addr 与$http_x_forwarded_for
用以记录客户端的ip地址;

$remote_user :用来记录客户端用户名称;

$time_local : 用来记录访问时间与时区;

$request : 用来记录请求的url与http协议;

$status : 用来记录请求状态;成功是200,


$request_length
:客户端发送的大小


$body_bytes_sent :记录发送给客户端文件主体内容大小;

$http_referer :用来记录从那个页面链接访问过来的;

$http_user_agent :记录客户毒啊浏览器的相关信息;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: