Nginx 从入门到放弃(三)

今天来学习nginx的日志管理,并通过日志脚本来切割日志并保存。

nginx日志管理

在nginx中设置日志格式

 http {
    log_format main  '$remote_addr - $remote_user [$time_local] "$request" '
                           '$status $body_bytes_sent "$http_referer" '
                           '"$http_user_agent" "$http_x_forwarded_for"';
    access_log /var/log/nginx/access.log main;
    }
 

自定义服务日志

 server {
    listen 80;
    server_name z.com;
    access_log /var/log/nginx/z.com.access.log main;
 }

nginx定时任务完成日志切割

实现原理:通过编写脚本,将当前的日志文件拷贝出来并以时间命名,然后利用定时计划任务进行定时执行即可。

 # runlog.sh
 
 #!/bin/bash
 LOGPATH=/usr/local/nginx/logs/z.com.access.log
 BASEPATH=/data/$(date -d yesterday +%Y%m%d-%H%M%S)_zcom_access.log
 
 mv $LOGPATH $BASEPATH
 touch $LOGPATH
 
 /usr/local/nginx/sbin/nginx -s reopen $LOGPATH
 

 

猜你喜欢

转载自www.cnblogs.com/welisit/p/11020138.html