网站首页 > 基础教程 正文
简单明了,直接开始,给热爱编程的你我
- apache
修改httpd.conf对以下两行进行调整
ErrorLog "| /usr/local/apache/bin/rotatelogs /data/www/logs/%Y%m%d_error.log 86400 480"
CustomLog "| /usr/local/apache/bin/rotatelogs /data/www/logs/%Y%m%d_access.log 86400 480" vcommon
使用命令rotatelogs 对日志进行切割,查找该命令的位置使用:which rotatelog
指定日志文件的位置和名称
/data/www/logs/error_log-%Y%m%d
指定分割时间:86400 默认单位为s。也就是24小时
指定分区时差:480 默认单位m,也就是8小时
- 网站日志(PHP日志等)使用调度任务
#!/bin/bash
# 备份php-fpm 及 web的日志
# 今天的日期
#file_date=$(date +"%Y%m%d")
# 昨天的日期
file_date=$(date -d"1 day ago" +"%Y%m%d")
# php log的路径
log_path_php=/home/www/logs/
# web log的路径
log_path_web=/home/www/logs/
# 备份目录
back_path=/home/www/logs_bak/
# =================== 备份php log ========================
mv ${log_path_php}php-fpm.log ${back_path}php/php-fpm.log_${file_date}
mv ${log_path_php}php_slow.log ${back_path}php/php_slow.log_${file_date}
mv ${log_path_php}php_error.log ${back_path}php/php_error.log_${file_date}
mv ${log_path_php}${file_date}_error.log ${back_path}apache/${file_date}_error.log
mv ${log_path_php}${file_date}_access.log ${back_path}apache/${file_date}_access.log
# 主进程发送USR1信号,重新打开日志文件,否则会继续往mv后的文件写数据的。
# 原因在于:linux系统中,内核是根据文件描述符来找文件的。如果不这样操作导致日志切割失败
kill -USR1 `ps axu | grep "php-fpm: master process" | grep -v grep | awk '{print $2}'`
# =================== 备份web log ========================
# 访问日志文件名格式为 xx_access.log;错误日志文件名格式为 xx_error.log
# 通过循环自动备份不同网站的日志文件
#cd ${log_path_web}
#for file in $(ls *_access.log);
#do
# mv ${file}{,_$file_date}
#done
# 向nginx主进程发送USR1信号,重新打开日志文件,否则会继续往mv后的文件写数据的。原因在于:linux系统中,内核是根据文件描述符来找文件的。如果不这样操作导致日志切割失败
#kill -USR1 `ps axu | grep "nginx: master process" | grep -v grep | awk '{print $2}'`
添加到定时调度中,每日执行
#!/bin/bash
#the date 7 days ago
Date_7=`date -d "-2 day" +%Y%m%d`
http_log_path="/home/www/logs_bak"
#clear logs
rm -fr ${http_log_path}/apache/${Date_7}_access.log
rm -fr ${http_log_path}/apache/${Date_7}_error.log
rm -fr ${http_log_path}/php/php-fpm.log_${Date_7}
rm -fr ${http_log_path}/php/php_error.log_${Date_7}
rm -fr ${http_log_path}/php/php_show.log_${Date_7}
添加到定时调度中,每日执行
猜你喜欢
- 2025-05-05 PHP对接百度语音识别技术(百度语音识别开发)
- 2025-05-05 每日一题 |10W QPS高并发限流方案设计(含真实代码)
- 2025-05-05 习惯了各种框架的文件上传,php原生上传图片你还记得吗?
- 2025-05-05 【玩法悉知】:领地战玩法全解析!(领地之战)
- 2025-05-05 猎聘同道精英汇:嘉宾徐文伟分享分布式高并发Java架构
- 2025-05-05 PHP开发是什么?兄弟连教你学PHP(php开发是啥)
- 2025-05-05 PHP实现URL编码、Base64编码、MD5编码的方法
- 2025-05-05 如何通过PhpSpreadsheet操作Excel文档
- 2025-05-05 使用 mix/vega + mix/db 进行现代化的原生 PHP 开发
- 2025-05-05 PHP防火墙代码,防火墙,网站防火墙,WAF防火墙,PHP防火墙大全
- 最近发表
- 标签列表
-
- jsp (69)
- pythonlist (60)
- gitpush (78)
- gitreset (66)
- python字典 (67)
- dockercp (63)
- gitclone命令 (63)
- dockersave (62)
- linux命令大全 (65)
- pythonif (68)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- console.table (62)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)