• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
你既然认准一条道路,何必去打听要走多久。
博客园    首页    新随笔    联系   管理    订阅  订阅

nginx配置文件详解----第一篇【访问与错误日志】

error_log错误日志    access_log访问日志  

log_format指令

语法: log_format name string …;
默认值: log_format combined “…”;
配置段: http

name表示格式名称,string表示等义的格式。log_format有一个默认的无需设置的combined日志格式,相当于apache的combined日志格式,如下所示:

log_format  combined  '$remote_addr - $remote_user  [$time_local]  '
                                   ' "$request"  $status  $body_bytes_sent  '
                                   ' "$http_referer"  "$http_user_agent" ';
 
log_format  porxy  '$http_x_forwarded_for - $remote_user  [$time_local]  '
                             ' "$request"  $status $body_bytes_sent '
                             ' "$http_referer"  "$http_user_agent" ';

 

日志格式允许包含的变量注释如下:

  • $remote_addr, $http_x_forwarded_for 记录客户端IP地址
  • $remote_user 记录客户端用户名称
  • $request 记录请求的URL和HTTP协议
  • $status 记录请求状态
  • $body_bytes_sent 发送给客户端的字节数,不包括响应头的大小; 该变量与Apache模块mod_log_config里的“%B”参数兼容。
  • $bytes_sent 发送给客户端的总字节数。
  • $connection 连接的序列号。
  • $connection_requests 当前通过一个连接获得的请求数量。
  • $msec 日志写入时间。单位为秒,精度是毫秒。
  • $pipe 如果请求是通过HTTP流水线(pipelined)发送,pipe值为“p”,否则为“.”。
  • $http_referer 记录从哪个页面链接访问过来的
  • $http_user_agent 记录客户端浏览器相关信息
  • $request_length 请求的长度(包括请求行,请求头和请求正文)。
  • $request_time 请求处理时间,单位为秒,精度毫秒; 从读入客户端的第一个字节开始,直到把最后一个字符发送给客户端后进行日志写入为止。
  • $time_iso8601 ISO8601标准格式下的本地时间。
  • $time_local 通用日志格式下的本地时间。

 

 Nginx 日志分割
    #vim logs.sh
    #!/bin/bash
    #Nginx日志存放位置
   
day=${logs}/sk_access.log$(date -d "yesterday" "+%Y_%m_%d")

   mv ${logs}/sk_access.log ${day}

   touch ${logs}/sk_access.log

   /usr/local/nginx/sbin/nginx -s reload

:wq

nginx日志定期删除

# cat rm_logs.sh
#!/bin/bash
#
###########################
#定期删除七天前nginx的日志#
###########################
find /usr/local/nginx/logs/sk_access.log* -mtime +7 -type f -name sk_access.log\* |xargs rm -f
find /usr/local/nginx/logs/error.log* -mtime +7 -type f -name error.log\* |xargs rm -f


 #创建计划任务
    #crontab -e
    0 0 * * * /bin/bash/logs.sh

    0 0 * * * /bin/bash/rm_logs.sh

 

posted on 2017-07-18 15:16  yma悦  阅读(171)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3