centos中nginx按日期自动分割访问日志
来源:互联网 发布:淘宝的香奈儿是正品吗 编辑:程序博客网 时间:2024/05/13 13:54
Web 访问日志 (access_log) 记录了所有外部客户端对Web服务器的访问行为,包含了客户端IP,访问日期,访问的URL资源,服务器返回的HTTP状态码等重要信息。
一条典型的Web访问日志如下:
192.168.50.195 - - [17/Jun/2016:23:59:12 +0800] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.84 Safari/537.36" "-"
1、 要解决问题:
当网站访问量大后,日志数据就会很多,如果全部写到一个日志文件中去,文件会变得越来越大。文件大速度就会慢下来,比如一个文件几百兆。写入日志的时候,会影响操作速度。另外,如果我想看看访问日志,一个几百兆的文件,下载下来打开也很慢。
注意:使用第三方免费的日志分析工具-日志宝,可以上传nginx、apache、iis的日志文件,它们帮助分析网站安全方面。毕竟专攻,更加专业。日志宝对上传的文件也是做了大小限制的,不超过50m。
2、日志自动切割脚本编写
nignx没有自动分开文件存储日志的机制。由于nginx它不会帮你自动分文件保存。所以,需要自己编写脚本来实现。
#!/bin/bash# Program:# Auto cut nginx log script.# 2016/6/15 luozhibo # nginx日志路径 /var/log/nginx/LOGS_PATH=/var/log/nginxTODAY=$(date -d 'today' +%Y-%m-%d)#echo $TODAY# 移动日志并改名mv ${LOGS_PATH}/error.log ${LOGS_PATH}/error_${TODAY}.logmv ${LOGS_PATH}/access.log ${LOGS_PATH}/access_${TODAY}.log# 向nginx主进程发送重新打开日志文件的信号kill -USR1 $(cat /var/run/nginx.pid)
上面shell脚本的原理是:
先把以前的日志文件移动重命名,目的是就是备份。
3、crontab自动任务配置
直接编写vim /etc/crontab 或者 直接通过echo写入自动任务
echo '59 23 * * * root /var/log/nginx/nginx_log_division.sh >> /var/log/nginx/cutnginxlog.log 2>&1' >> /etc/crontab
每晚23:59分自动执行计划任务
以root用户身份运行
将自动任务的执行日志(错误和正确的日志)自动写入cutnginxlog.log
“命令 >> 2>&1” 表示以追加方式将正确输出和错误输出都保存到同一个文件中
4、参考链接:
nginx自动切割访问日志
以日期为文件名来存储nginx日志
0 0
- centos中nginx按日期自动分割访问日志
- nginx日志按日期自动切割脚本
- Nginx之——日志按日期分割的实现(基于CentOS操作系统)
- nginx日志按日期分割(按天分割)
- Linux下Apache日志按日期分割并自动备份
- apache 日志按日期分割
- nginx按日期存储日志
- 使用cronolog按日期分割日志
- apache日志按日期进行分割
- 使用cronolog按日期分割日志
- tomcat日志catalina.out按日期分割
- 基于log4net的支持动态文件名、按日期和大小自动分割文件的日志组件
- Apache按日期切割访问日志
- [Java][log4j]支持同时按日期和文件大小分割日志
- tomcat下log4j接管日志并按日期分割
- log4j 同时按日期和文件大小分割日志
- log4j支持同时按日期和文件大小分割日志
- nginx 访问日志和错误日志按日切割sh脚本
- 关于Object=null
- 麒麟开源堡垒主机在等保上的合规性分析
- WebView的使用
- 纯代码实现 AutoLayout 使用第三方框架 Masonry
- Android开发笔记之Intent跳转到系统应用中的拨号界面、联系人界面、短信界面
- centos中nginx按日期自动分割访问日志
- 微信支付:商户订单号重复
- Java线程与Xss
- ACdream 1412 2-3 Trees 递推
- iOS 单元测试1- 单元测试框架选型
- nyoj 8 一种排序
- 【Android】【完善】MarqueeView垂直跑马灯解析和完善
- iOS 简单的视频直播功能开发(实时视音频流录制编码+RTMP传输+实时拉流解码播放)
- java UT,IT覆盖率报告