nginx日志分割
2016-05-09 00:00
555 查看
摘要: shell+定时任务+nginx信号管理,完成日志按日期存储
1、应用场景
当网站访问量大后,日志数据就会很多,如果全部写到一个日志文件中去,文件会变得越来越大。文件大速度就会慢下来,比如一个文件几百兆。写入日志的时候,会影响操作速度。另外,如果我想看看访问日志,一个几百兆的文件,下载下来打开也很慢。
2、shell脚本
nginx-log-split.sh
#!/bin/bash
base_path='/home/wwwlogs' # nginx设置的日志保存目录
log_path=$(date -d yesterday +"%Y%m") # 日志分割之后保存地址
day=$(date -d yesterday +"%d") # 日志名
mkdir -p $base_path/$log_path
mv $base_path/access.log $base_path/$log_path/access_$day.log
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
1、nginx 的主进程收到USR1信号,会重新打开日志文件(以nginx配置文件中的日志名称命名,就是配置文件中access_log项所设置的值,如果文件不存在,会自动创建一个新的文件xxx.log)。
2、然后把日志文件的拥有者改为“工作进程(worker进程)”,目的是让worker进程就具备了对日志文件的读写权限(master和worker通常以不同用户运行,所以需要改变拥有者)。
3、nginx主进程会关闭重名的日志文件(也就是刚才使用mv命令重命名成xxx.log_ 20130909.log的文件),并通知工作进程使用新打开的日志文件(刚才主进程打开的文件xxx.log)。具体实现上更细化点就是,主进程把USR1信号发给worker,worker接到这个信号后,会重新打开日志文件(也就是配置文件中约定的xxx.log)
3、nginx日志分割下载到本地
可以通过ansys完成
1、应用场景
当网站访问量大后,日志数据就会很多,如果全部写到一个日志文件中去,文件会变得越来越大。文件大速度就会慢下来,比如一个文件几百兆。写入日志的时候,会影响操作速度。另外,如果我想看看访问日志,一个几百兆的文件,下载下来打开也很慢。
2、shell脚本
nginx-log-split.sh
#!/bin/bash
base_path='/home/wwwlogs' # nginx设置的日志保存目录
log_path=$(date -d yesterday +"%Y%m") # 日志分割之后保存地址
day=$(date -d yesterday +"%d") # 日志名
mkdir -p $base_path/$log_path
mv $base_path/access.log $base_path/$log_path/access_$day.log
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
1、nginx 的主进程收到USR1信号,会重新打开日志文件(以nginx配置文件中的日志名称命名,就是配置文件中access_log项所设置的值,如果文件不存在,会自动创建一个新的文件xxx.log)。
2、然后把日志文件的拥有者改为“工作进程(worker进程)”,目的是让worker进程就具备了对日志文件的读写权限(master和worker通常以不同用户运行,所以需要改变拥有者)。
3、nginx主进程会关闭重名的日志文件(也就是刚才使用mv命令重命名成xxx.log_ 20130909.log的文件),并通知工作进程使用新打开的日志文件(刚才主进程打开的文件xxx.log)。具体实现上更细化点就是,主进程把USR1信号发给worker,worker接到这个信号后,会重新打开日志文件(也就是配置文件中约定的xxx.log)
3、nginx日志分割下载到本地
可以通过ansys完成
相关文章推荐
- 绝对详细!Nginx基本配置、性能优化指南
- 20150410--Lnmp+Nginx-02
- 20150410--Lnmp+Nginx-01
- yum 安装php,mysql,php-fpm,nginx
- Nginx学习笔记1-编译Nignx,搭建开发环境
- 利用Nginx实现域名转发 不修改主机头
- nginx重启
- Nginx负载均衡的几种算法
- Nginx与Apache对比
- Nginx详细配置
- nginx 同步与异步 阻塞与非阻塞
- python处理nginx日志,并统计分析---我这个写的处理时间效率不高,有好方法,请大家指正
- zabbix监控Nginx
- Nginx 虚拟主机 VirtualHost 配置
- nginx日志文件切割
- nginx启动脚本
- nginx
- nginx的启动与关闭
- Nginx搭建负载环境
- /usr/local/nginx/sbin/nginx: error while loading shared libraries: libpcre.so.1