Очень большой лог ошибок

Всем привет. Проблема в том, что файл /core/cache/logs/error.log очень быстро разрастается. У меня каждые 12 часов происходит выгрузка остатков на сайт, за сутки забиваются логи мегабайт на 40. Можно как-то автоматически этот файл удалять после каждой выгрузки?

Всё его содержимое такого вида:

[2015-07-16 11:52:58] (ERROR @ /assets/components/msklad/1c_exchange.php) Resource URI joma-futzalki-top-flex-topw.fi.html already exists for resource id = 3363; skipping duplicate resource URI for resource id = 3364
mekirile
17 июля 2015, 07:53
modx.pro
3 596
0

Комментарии: 3

Володя
17 июля 2015, 11:13
1
+1
можно очистить так
$modx->runProcessor('system/errorlog/clear');
    Николай
    18 февраля 2019, 17:34
    0
    Часто сталкиваюсь с тем, что лог забивается спустя несколько месяцев. Сделал сайт, а потом тебе пишут, типа: «что-то случилось с админкой, что делать??». Когда сервер не может его открыть для записи из-за нехватки памяти. Надоело, написал небольшой плагин, может кому пригодится:

    <?php
    
    if( in_array($modx->event->name, ['OnManagerPageInit','OnBeforeManagerLogin']) ) {
        $logpath = MODX_CORE_PATH . 'cache/logs/error.log';
    
        if(filesize($logpath) > 5000000) {
            $logcontent = file_get_contents($logpath);
            $filename = 'error-'. date("Y-d-m_H:i:s");
            
            $zip = new ZipArchive();
            $zip->open(MODX_CORE_PATH . 'cache/logs/'. $filename . '.zip', ZipArchive::CREATE);
            $zip->addFromString($filename . '.txt', $logcontent);
            $zip->close();        
            
            $modx->runProcessor('system/errorlog/clear');
        }
    }

    Должно быть включено расширение php_zip на сервере. При достижении размера в 5 мб рядом с логом ошибок создаётся архив с его копией, а основной лог затирается.

      Николай
      18 февраля 2019, 17:48
      0
      В $filename месяц и день только местами поменять)
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      3