[Script] Limpando os Logs e Arquivos de Cache do seu Magento via Cron

A A A
110%Redefinir
Neste artigo ensinaremos como limpar as tabelas de logs desnecessários que acumulam muito espaço em seu banco de dados, além de limpar automaticamente todos os arquivos de cache do seu Magento.

1) Acesse o Gerenciador de Arquivos do seu painel de controle e crie um arquivo com o nome cleanup.php dentro da pasta de instalação do seu Magento (Exemplo: /www/magento/cleanup.php) com o conteúdo:
<?php
/**
* Magento Maintenance Script
*
* @version 3.0.1
* @author DDR Host Hospedagem de Sites <suporte@ddrhost.com.br>
* @copyright Copyright (c) 2010-2015 DDR Host Hospedagem de Sites. Todos os direitos reservados.
* @link https://www.ddrhost.com.br
*/

switch($_GET['clean']) {
case 'log':
clean_log_tables();
break;
case 'var':
clean_var_directory();
break;
}

function clean_log_tables() {
$xml = simplexml_load_file('./app/etc/local.xml', NULL, LIBXML_NOCDATA);

if(is_object($xml)) {
$db['host'] = $xml->global->resources->default_setup->connection->host;
$db['name'] = $xml->global->resources->default_setup->connection->dbname;
$db['user'] = $xml->global->resources->default_setup->connection->username;
$db['pass'] = $xml->global->resources->default_setup->connection->password;
$db['pref'] = $xml->global->resources->db->table_prefix;

$tables = array(
'aw_core_logger',
'dataflow_batch_export',
'dataflow_batch_import',
'log_customer',
'log_quote',
'log_summary',
'log_summary_type',
'log_url',
'log_url_info',
'log_visitor',
'log_visitor_info',
'log_visitor_online',
'index_event',
'report_event',
'report_viewed_product_index',
'report_compared_product_index',
'catalog_compare_item',
'catalogindex_aggregation',
'catalogindex_aggregation_tag',
'catalogindex_aggregation_to_tag'
);

mysql_connect($db['host'], $db['user'], $db['pass']) or die(mysql_error());
mysql_select_db($db['name']) or die(mysql_error());

foreach($tables as $table) {
@mysql_query('TRUNCATE `'.$db['pref'].$table.'`');
}
} else {
exit('Unable to load local.xml file');
}
}

function clean_var_directory() {
$dirs = array(
'downloader/.cache/',
'downloader/pearlib/cache/*',
'downloader/pearlib/download/*',
'media/css/',
'media/css_secure/',
'media/import/',
'media/js/',
'var/cache/',
'var/locks/',
'var/log/',
'var/report/',
'var/session/',
'var/tmp/'
);

foreach($dirs as $dir) {
exec('rm -rf '.$dir);
}
}
?>

2) Acesse a área de Agendamento de Tarefas (Tarefas CRON) do seu painel de controle e crie um CRON SEMANAL para efetuar a limpeza dos LOGS do seu Magento. Comando CRON:
curl -s -o /dev/null http://www.seudominio.com.br/cleanup.php?clean=log

3) Agora crie outro CRON SEMANAL para efetuar a limpeza dos ARQUIVOS DE CACHE do seu Magento. Comando CRON:
curl -s -o /dev/null http://www.seudominio.com.br/cleanup.php?clean=var

Com os dois CRONS configurados corretamente, o seu servidor de hospedagem fará todo o processo de limpeza automaticamente.

Este artigo foi útil?


   

Deixe um Comentário