## 编写切割脚本[root@wy ~]# vim /usr/local/nginx/sbin/nginx_logrotate.sh#!/bin/bashd=`date -d "-1 day" +%F`[ -d /tmp/nginx_log ] || mkdir /tmp/nginx_logmv /tmp/access.log /tmp/nginx_log/$d.log/etc/init.d/ng            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2017-01-01 20:29:51
                            
                                757阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1、新建脚本文件vim /usr/local/sbin/nginx_logrotate.sh#!/bin/bashd=`date -d "-1 day" +%F`[ -d /tmp/nginx_log ] || mkdir /tmp/nginx_log #||表示或者,如果前面的条件成功就不执行后面的,如果不成功则执行后面的mv /tmp/access.log /tmp/nginx_log/$d.            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2016-05-30 16:39:18
                            
                                418阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1、为什么要进行日志分割?nginx默认将日志信息写在一个文件中,时间一久日志文件中条目越来越多,文件越来越大,不方便查看,备份的时候也不需要备份重复的信息,故需分割日志,将日志按小时,天,周…分割,写到不同的日志文件中。2、日志分割的原理通过linux自定义脚本,完成日志的分割和备份,使用定时任务,实现自动备份。2、日志分割如何操作?(1)对nginx服务器上面的日志进行日志切割(手动方式)第一            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-02 08:39:33
                            
                                449阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            此文章内容完全以我自己虚机中的文件路径为例访问日志vim/etc/nginx/nginx.confnginx主配置文件中有日志格式如图!image.png(https://s2.51cto.com/images/20220629/1656477440386207.png?xossprocess=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                            精选
                                                        
                            2022-06-29 12:40:16
                            
                                946阅读
                            
                                                        
                                点赞
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            目标:每天晚上凌晨一点钟左右把昨天的任务给它切掉,把昨天的日志给它改个名存起来,根据昨天的时间给它改个名存起来,所以要根据日期生成文件名。也许你不会写bash脚本,但是老师带着你一步一步地来。shell脚本比php简单很多,主要记住它的变量如何声明就搞定了,其他没什么。声明你的LOGPATH在哪,因为要备份你所以得把你的路径搞清楚。主要的工作:把LOGPATH下的这个玩意给它重命名,拿日期重命名,            
                
         
            
            
            
            Nginx日志自动切割神器背景:发现nginx日志文件过大:50g一个文件,手动切割都要半天centos7 压测环境 大量压测请求,nginx日志过于庞大,一开始是写了一份shell脚本进行日期匹配自动切割日志。考虑到不同的环境可能nginx日志格式不一样,匹配规则需要重新写。非常麻烦。所以找到了这个方法logrotate使用系统自带日志切割神器logrotatecat <<EOF &            
                
         
            
            
            
            文章目录前言一、access_log1、语法2、基本用法3、作用域4、log_format 自定义日志格式二、error_log1、语法2、基本用法3、作用域4、rewrite_log 指令三、Nginx变量1、简介2、自定义变量(1)变量创建与赋值(2)变量的可见性(3)Perl的变量插值(4)大括号插值(5)变量创建,赋值及作用域问题3、内置预定义变量(1)$uri vs $request_            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-26 08:28:23
                            
                                2717阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Nginx日志的指令主要有两条:
log_format,设置日志的格式
access_log,指定日志文件的存放路径、格式和缓存大小
两条指令在Nginx配置文件中的位置可以在http{……..}之间,也可以在虚拟主机之间,即server(…….)两个大括号之间。
log_format 语法如下: 
log_format name            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2011-10-31 15:42:42
                            
                                10000+阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            
image.png
            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-03-17 11:10:09
                            
                                80阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Nginx是我们生产环境的主要入口,所有的请求都会在这里留下痕迹,所以会导致一个问题,它的日志文件会一天比一天的大。直到有一天你无法接受这个庞大的文件的时候,就你就会想到了切割文件的这个办法。能想到切割日志的童鞋那肯定是对Nginx用的熟悉的不能再熟悉的了,所以这里我就不过多的阐述Nginx的应用了,只说一个点  -USR1选            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2022-12-06 01:42:49
                            
                                193阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            #!/bin/bash
#set the path to nginx log files
log_files_path="/data/nginxlogs"
log_files_dir=${log_files_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday&quo            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2012-05-31 20:03:45
                            
                                353阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            nginx的日志文件没有rotate功能。如果你不处理,日志文件将变得越来越大,还好我们可以写一个nginx日志切割脚本来自动切割日志文件。第一步就是重命名日志文件,不用担心重命名后nginx找不到日志文件而丢失日志。在你未重新打开原名字的日志文件前,nginx还是会向你重命名的文件写日志,linux是靠文件描述符而不是文件名定位文件。第二步向nginx主进程发送USR1信号。nginx主进程接到            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2013-12-20 10:28:04
                            
                                418阅读
                            
                                                        
                                点赞
                            
                                                                             
                 
                
                             
         
            
            
            
            发现nginx的日志没有正常的切割cat logrotate.d/nginx/home/log/nginx1.0.11/*.log{
    daily
    rotate 30
    copytruncate
    missingok
    notifempty
    compress
}参照http://wiki.nginx.org/LogRotation$ mv access.lo            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2013-12-29 23:33:03
                            
                                713阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            nginx的日志文件没有rotate功能。如果你不处理,日志文件将变得越来越大,还好我们可以写一个nginx日志切割脚本来自动切割日志文件。第一步就是重命名日志文件,不用担心重命名后nginx找不到日志文件而丢失日志。在你未重新打开原名字的日志文件前,nginx还是会向你重命名的文件写日志,linux是靠文件描述符而不是文件名定位文件。第二步向nginx主进程发送USR1信号。nginx主进程接到            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2014-03-21 15:01:48
                            
                                341阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            #多虚拟主机日志切割#!/bin/bashfor logs_path in `cd /opt/logs && ls ./`do    cd /opt/logs/${logs_path}   mkdir -p ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday"            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2016-04-05 13:00:09
                            
                                574阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、使用logrotate切割yum安装的nginx会自动使用logrotate这个日志管理软件进行切割,所以本章节我们主要介绍有关logrotate相关的知识点。[root@lanmp bin]# yum install -y nginx1.1 logrotate介绍logrotate是什么呢?它是一个linux系统日志的管理工具。它可以切割、压缩等其他软件的日志文件软件。我们可以通过如下命令安            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2016-05-16 14:10:24
                            
                                837阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            编写脚本:vim  /usr/local/sbin/logrotate.sh  //加入#!/bin/bashd=`date -d "-1 day" +%F`[ -d /tmp/nginx_log ] || mkdir /tmp/nginx_logmv  /tmp/access.log    /tmp/nginx_log/$d.            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2016-06-08 16:42:12
                            
                                600阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. 编辑脚本    说明:date -d "-1 day" 表示昨天; %F表示年月日以Y%-m%-d形式;[-d ]表示判断是否有这个目录,如果没有就或关系,创建该目录;将每日的access.log文件挪到创建的目录/tmp/nginx_log/中,并命名为d变量的格式;reload用于重新生成acces.log,并重定向清空;考虑到切割的日志比较大,gzip -f判断日志            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2017-02-23 17:34:27
                            
                                312阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            日志切割当网站访问量大后,日志数据就会很多,如果全部写到一个日志文件中去,文件会变得越来越大。文件大速度就会慢下来,比如一个文件几百兆。写入日志的时候,会影响操作速度。另外,如果我想看看访问日志,一个几百兆的文件,下载下来打开也很慢。为了方便对日志进行分析计算,需要对日志进行定时切割。定时切割的方式有按照月切割、按天切割,按小时切割等。最常用的是按天切割。#!/bin/bash
logs_path            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2017-11-10 18:59:46
                            
                                1348阅读
                            
                                                        
                                点赞
                            
                                                                             
                 
                
                             
         
            
            
            
            日志切割            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2018-08-13 16:55:12
                            
                                3877阅读