Changeset 5954

Show
Ignore:
Timestamp:
05/16/08 00:55:18 (8 months ago)
Author:
coolengineer
Message:
  • #951
  • 최근 1000줄만 남기는 cron log작성
Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/lib/model/blog.cron.php

    r5902 r5954  
    66function dumbCronScheduler($checkOnly=true) 
    77{ 
    8     global $service; 
     8    global $service, $blog; 
    99    requireModel('common.setting'); 
    1010    $now = Timestamp::getUNIXtime(); 
     
    2525                    '12h' => 60*60*12 ); 
    2626    /* Events: Cron1m, Cron5m, Cron30m, Cron1h, Cron2h, Cron6h, Cron12h */ 
     27    $log_file = dirname(__FILE__).DS."..".DS."..".DS."cache".DS."cronlog.txt"; 
     28    $log = fopen( $log_file, "a" ); 
    2729    foreach( $schedules as $d => $diff ) { 
    2830        if( $now > $diff + $dumbCronStamps[$d]    ) {  
    2931            if( $checkOnly && eventExists("Cron$d") ) return true; 
    3032            fireEvent( "Cron$d",  null, $now ); 
     33            fwrite( $log, date( 'Y-m-d H:i:s' ).' '.$blog['name']." Cron$d executed ({$_SERVER['REQUEST_URI']})\r\n" ); 
    3134            $dumbCronStamps[$d] = $now; 
    3235        } 
    3336    } 
     37    fclose($log); 
     38 
     39    /* Keep just 1000 lines */ 
     40    $logcontent = explode( "\r\n", file_get_contents( $log_file ) ); 
     41    $logcontent = implode( "\r\n", array_slice( $logcontent, -1000 ) ); 
     42    $log = fopen( $log_file, "w" ); 
     43    fwrite( $log, $logcontent ); 
     44    fclose( $log ); 
    3445    setServiceSetting( 'dumbCronStamps', serialize( $dumbCronStamps ) ); 
    3546    return false;