nginx日志切割脚本和webbench网站压力测试工具的部署及使用

4540阅读 1评论2015-06-22 china_Linux_hy
分类:架构设计与优化

每天定时切割 Nginx 日志的脚本
1) vi /usr/local/nginx/sbin/cut_nginx_log.sh

点击(此处)折叠或打开

  1. #!/bin/bash
  2. # This script run at 00:00
  3. # The Nginx logs path
  4. logs_path="/usr/local/nginx/logs/"
  5. mkdir -p ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")/
  6. mv ${logs_path}access_blog.log ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d
  7. "yesterday" +"%m")/access_blog_$(date -d "yesterday" +"%Y%m%d").log
  8. mv ${logs_path}access_ ${logs_path}$(date -d "yesterday" +"%Y")/$(date -d
  9. "yesterday" +"%m")/access_www_$(date -d "yesterday" +"%Y%m%d").log
  10. kill -USR1 `cat /usr/local/nginx/nginx.pid`
  11. crontab -e
  12. 00 00 * * * /bin/bash /usr/local/nginx/sbin/cut_nginx_log.sh
2) vi /usr/local/nginx/sbin/cut_nginx_log.sh

点击(此处)折叠或打开

  1. #!/bin/bash
  2. nginx_app=/usr/local/nginx/sbin/nginx #设置 nginx 的目录
  3. logs_dir=/usr/local/nginx/logs/ #log 目录
  4. bak_dir=/usr/local/nginx/logs/bak/ #log 备份目录
  5. #先把现有的 log 文件挪到备份目录临时存放
  6. cd $logs_dir
  7. echo “moving logs”
  8. /bin/mv *.log $bak_dir
  9. sleep 3
  10. #重建 nginx log
  11. echo “rebuild logs”
  12. echo “$nginx_app -s reopen”
  13. $nginx_app -s reopen
  14. #按天打包 log 文件
  15. echo “begining of tar”
  16. cd $bak_dir
  17. /bin/tar zcf `date +%Y%m%d`.tgz *.log
  18. #删除备份目录的临时文件
  19. echo “rm logs”
  20. rm -f *.log
  21. echo “done”
  22. crontab -e
  23. 00 00 * * * /bin/bash /usr/local/nginx/sbin/cut_nginx_log.sh >/dev/null 2>&1
3) vi /etc/logrotate.conf

点击(此处)折叠或打开

  1. /usr/local/nginx/logs/*.log {
  2. daily
  3. missingok
  4. rotate 7
  5. compress
  6. delaycompress
  7. notifempty
  8. create 640 root adm
  9. sharedscripts
  10. postrotate
  11. [ ! -f /usr/local/nginx/logs/nginx.pid ] || kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
  12. endscript
  13. }
logrotate -vf /etc/logrotate.conf

webbench网站压力测试工具的安装和使用

wget ~cz210552/distfiles/webbench-1.5.tar.gz
tar zxvf webbench-1.5.tar.gz
cd webbench-1.5
vim Makefile

点击(此处)折叠或打开

  1. install -m 644 webbench.1 $(DESTDIR)$(PREFIX)/share/man/man1        #修改这里的路径
make && make install
#webbench -? (查看命令帮助)
常用参数 说明,-c 表示客户端数,-t 表示时间
测试实例:

webbench -c 500 -t 30

分析:每秒钟响应请求数:15402 pages/min,每秒钟传输数据量14085893 bytes/sec.



上一篇:内核参数优化和Php 安全设置
下一篇:RAID磁盘阵列