[转帖]nginx按日分割日志

nginx,分割,日志 · 浏览次数 : 0

小编点评

```bash #!/bin/bash # 定期切割nginx日志并压缩,加入crontab每天0:00切割 # 系统环境变量 NGINX="/usr/local/nginx/sbin/nginx" # 昨天日期 YESTERDAY=$(date -d \"yesterday\" +%Y-%m-%d) # 日志目录 LOGS_PATH="/data/nginx/logs" # 服务器名称数组 server_names=("access_chaoneng") # 循环分割日志 for (( i = 0; i < ${#server_names[@]}; i++ )); do # 切割日志文件 cut_logs "${server_names[$i]}" #压缩日志文件 tar zcf "${name}.${YESTERDAY}.log.gz" "${name}.${YESTERDAY}.log" # 发送 USR1 信号,重新打开日志文件 # service nginx reload # 删除临时日志文件 rm -rf "${name}.${YESTERDAY}.log" done ```

正文

https://www.cnblogs.com/leffss/p/7832123.html

 

#!/bin/bash
#按日切割nginx日志并压缩,加入crontab每天0:00切割
#作者:fafu_li
#时间:2015.08.15

source /etc/profile        #加载系统环境变量
source ~/.bash_profile    #加载用户环境变量
set -o nounset             #引用未初始化变量时退出
set -o errexit            #执行shell命令遇到错误时退出

PID="/usr/local/nginx/logs/nginx.pid"    #pid目录
NGINX="/usr/local/nginx/sbin/nginx"
YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)    #昨天日期
LOGS_PATH="/data/nginx/logs"    #日志目录
server_names=("access_chaoneng")    #日志名
server_count=${#server_names[@]}

#分割日志
cut_logs(){
        local name=$1
        cd $LOGS_PATH
        /bin/mv -f ${name}.log  ${name}.${YESTERDAY}.log
        #向nginx主进程发送 USR1 信号,USR1 信号是重新打开日志文件
        #不然nginx主进程写入的还是移动后的日志文件
        #三种方式,根据需求使用任意一种
        #service nginx reload
        #kill -USR1 $(cat $PID)
        $NGINX -s reload
        tar zcf ${name}.${YESTERDAY}.log.gz ${name}.${YESTERDAY}.log
        rm -rf ${name}.${YESTERDAY}.log
}

#循环分割日志
for (( i = 0; i < $server_count; i++ )); do
        cut_logs ${server_names[$i]}
done

与[转帖]nginx按日分割日志相似的内容:

[转帖]nginx按日分割日志

https://www.cnblogs.com/leffss/p/7832123.html #!/bin/bash #按日切割nginx日志并压缩,加入crontab每天0:00切割 #作者:fafu_li #时间:2015.08.15 source /etc/profile #加载系统环境变量 s

[转帖]Nginx性能调优实战

https://cloud.tencent.com/developer/article/1513125?from=article.detail.1860295 1、Nginx运行工作进程数量 Nginx运行工作进程个数一般设置CPU的核心或者核心数x2。如果不了解cpu的核数,可以top命令之后按1

[转帖]Nginx性能调优实战

https://cloud.tencent.com/developer/article/1513125?from=article.detail.1860295 1、Nginx运行工作进程数量 Nginx运行工作进程个数一般设置CPU的核心或者核心数x2。如果不了解cpu的核数,可以top命令之后按1

[转帖]Nginx(四)负载均衡

一 nginx目录的说明 1 nginx/ 3 |-- client_body_temp 4 |-- conf #这是Nginx所有配置文件的目录,极其重要 5 | |-- fastcgi.conf 'fastcgi相关参数的配置文件' 6 | |-- fastcgi.conf.default #f

[转帖]nginx限速

https://www.cnblogs.com/fengzi7314/p/16541440.html 第一步,先创建限制的规则,我这里直接在nginx默认的配置文件目录下配置,如果想自定义,需要在主配置文件添加include xx/xxx/xxx/*.conf配置 [root@node5 nginx

[转帖]Nginx支持WebSocket反向代理

https://www.cnblogs.com/zhengchunyuan/p/12923692.html WebSocket是目前比较成熟的技术了,WebSocket协议为创建客户端和服务器端需要实时双向通讯的webapp提供了一个选择。其为HTML5的一部分,WebSocket相较于原来开发这类

[转帖]Nginx内置变量以及日志格式变量参数详解

补充 $args #请求中的参数值 $query_string #同 $args $arg_NAME #GET请求中NAME的值 $is_args #如果请求中有参数,值为"?",否则为空字符串 $uri #请求中的当前URI(不带请求参数,参数位于$args),可以不同于浏览器传递的$reques

[转帖]nginx proxy_pass keepalive

Syntax: keepalive connections; Default: — Context: upstream This directive appeared in version 1.1.4. Activates the cache for connections to upstream

[转帖]Nginx超时timeout 设置

Nginx 超时配置,连接时间过长直接关闭连接,显示timeout http { #每个 TCP 连接最多可以保持多长时间 keepalive_timeout 60; #客户端向服务端发送一个完整的 request header client_header_timeout 10; #客户端发送服务端

[转帖]nginx反向代理时保持长连接

https://www.cnblogs.com/liufarui/p/11075630.html ·【场景描述】 HTTP1.1之后,HTTP协议支持持久连接,也就是长连接,优点在于在一个TCP连接上可以传送多个HTTP请求和响应,减少了建立和关闭连接的消耗和延迟。 如果我们使用了nginx去作为反