php 日志按天截取,php系统日志切割的实例

日志切割我们很少使用php来开发了,因为php处理这些来非常的慢了,不过日志小的话或直接在网站上查看日志时这个就起到作用了,下面来看一个php系统日志切割的实例,具体如下。

我习惯设置的日志路径是这样

/home/www/logs/域名.log

比如

/home/www/logs/www.yundaiwei.com.log

为了方便管理,日志需要按天保存在一个文件中,并且保留指定天数的日志,超过时间的就删除。

分享一下脚本

#!/usr/bin/php

$logdir = '/home/www/logs/';

// 保留天数含当天

$log_save_day = 7;

$files = glob("{$logdir}/*");

foreach($files as $path){

$filename = basename($path);

preg_match("/(\d{8})\.log/", $filename, $preg);

$date = @$preg[1];

if(empty($date)){

// 当天日志,更改文件名

$newpath = $logdir . '/' . str_replace('log', date('Ymd',strtotime("-1 day")).'.log', $filename);

rename($path, $newpath);

echo "$path >>> $newpath\n";

}else{

// 超过保留天数,删除

if(time() 10 - strtotime($date) > 3600*24*$log_save_day){

unlink($path);

echo "$path delete!\n";

}

}

}

shell_exec('/etc/init.d/nginx reload &> /dev/null');

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值