Saber como verificar se o cron do Magento está realmente rodando é essencial para garantir o funcionamento correto de diversas tarefas automatizadas da plataforma, como envio de e-mails, geração de relatórios, indexações, limpezas de cache e atualizações programadas. Quando o cron não está funcionando corretamente, a loja pode apresentar falhas silenciosas que comprometem a performance e a experiência do usuário.
Neste artigo, você vai aprender como testar, monitorar e validar se o cron job está operando corretamente no Magento 2, além de dicas práticas para evitar falhas recorrentes.
O que é o cron no Magento?
O cron job no Magento é um agendador de tarefas que executa comandos automaticamente em intervalos definidos. Ele é responsável por manter o sistema atualizado e funcional, realizando tarefas como:
- Processamento de pedidos agendados
- Envio de newsletters
- Atualização de preços e promoções
- Execução de reindexações automáticas
- Limpeza de cache e logs
- Sincronização com módulos externos
Se o cron não estiver configurado corretamente ou não estiver sendo executado, muitos desses recursos param de funcionar sem alertas visíveis.
Como verificar se o cron do Magento está rodando corretamente
1. Verifique a última execução dos cron jobs via CLI
Magento oferece um comando específico para monitorar o cron:
php bin/magento cron:run
Se o cron estiver operando corretamente, o comando executará as tarefas pendentes e não retornará erros. Para verificar o status geral dos crons agendados, você também pode executar:
php bin/magento cron:status
Isso mostra o tempo da última execução e alerta se algum cron estiver parado por muito tempo.
2. Verifique os registros nas tabelas cron_schedule
A tabela cron_schedule
armazena os logs de execução do cron. Use o seguinte comando SQL:
sqlCopiarEditarSELECT job_code, status, scheduled_at, executed_at, finished_at
FROM cron_schedule
ORDER BY scheduled_at DESC
LIMIT 10;
Status possíveis:
pending
: tarefa agendada, aguardando execuçãosuccess
: tarefa concluída com sucessomissed
: tarefa agendada, mas não executadaerror
: falha na execução da tarefa
Se houver muitos registros com status missed
ou error
, o cron não está sendo executado corretamente.
3. Verifique os logs do Magento
Os arquivos de log também podem indicar se o cron está rodando. Verifique os diretórios:
var/log/cron.log
(se habilitado)var/log/system.log
var/log/exception.log
Procure por mensagens relacionadas à execução de tarefas agendadas. Se o cron estiver inativo, esses logs permanecerão sem novas entradas.
4. Confirme o agendamento no sistema operacional (crontab)
No terminal, execute:
crontab -l
Você deve ver algo como:
* * * * * /usr/bin/php /caminho/da/sua/loja/bin/magento cron:run | grep -v "Ran jobs by schedule" >> /caminho/da/sua/loja/var/log/magento.cron.log
Esse comando deve estar agendado para rodar a cada minuto. Certifique-se de que está no usuário correto (geralmente o mesmo que executa o Apache ou Nginx, como www-data
).
5. Use ferramentas de monitoramento
Ferramentas como New Relic, Munin, Nagios ou scripts personalizados de shell podem ser usados para validar se o cron está executando em intervalos regulares e alertar em caso de falhas.
Dicas para garantir que o cron do Magento funcione corretamente
- Sempre use o caminho absoluto no
crontab
- Mantenha permissões corretas nos diretórios e arquivos
- Evite executar o cron manualmente com o usuário root
- Habilite logs detalhados para auditoria
- Evite sobrecarga de tarefas simultâneas (use
cron:install
para gerar configurações otimizadas)
Solução de problemas comuns com cron
Problema | Causa provável | Solução recomendada |
---|---|---|
Cron rodando, mas tarefas não executam | Permissões incorretas ou problemas no cron_schedule | Verificar permissões e estado da tabela |
Status “missed” frequente | Cron não está sendo executado pelo sistema | Reconfigurar crontab com cron:install |
Cron.log vazio | Cron nunca foi disparado | Validar usuário e agendamento no SO |
Reindexações automáticas falhando | Cron desabilitado ou com erro | Habilitar indexadores via agendamento |
Conclusão: cron funcionando é sinônimo de loja saudável
Saber como verificar se o cron do Magento está realmente rodando é essencial para manter a loja operando sem falhas ocultas. Um cron mal configurado compromete indexações, promoções, pedidos e até integrações com meios de pagamento e marketplaces.
👉 Para entender como configurar corretamente o cron e evitar erros, confira nosso guia completo:
Como configurar o cron no Magento e evitar falhas recorrentes