Configurando o cron para executar a cada 30 minutos

8

Eu quero criar um cron que é executado a cada 30 minutos.

Estou usando outro cron como exemplo - eu criei o cron em um config.xmlarquivo, não usando a interface de administração.

O exemplo que estou usando é o seguinte:

<tracking_cron>
    <schedule><cron_expr>0 4 * * *</cron_expr></schedule>
    <run>
        <model>tracking/observer::cron</model>
    </run>
</tracking_cron>

Minhas perguntas são as seguintes:

1) Em que intervalos o cron acima está sendo executado?

2) Como seria cron_exprum cron que deveria ser executado a cada 30 minutos?

Skytiger
fonte

Respostas:

14

A expressão cron atual que você adicionou <cron_expr>0 4 * * *</cron_expr>será executada todos os dias às 04:00

next at 2017-03-23 04:00:00
then at 2017-03-24 04:00:00
then at 2017-03-25 04:00:00
then at 2017-03-26 04:00:00
then at 2017-03-27 04:00:00

Se você desejar a cada 30 minutos, poderá adicionar expressão como

<cron_expr>*/30 * * * *</cron_expr>

next at 2017-03-22 14:30:00
then at 2017-03-22 15:00:00
then at 2017-03-22 15:30:00
then at 2017-03-22 16:00:00
then at 2017-03-22 16:30:00

Você pode testar a expressão neste site de referência

Priyank
fonte
2
Marquei o site como favorito, é exatamente o que eu precisava - pesquisei extensivamente, mas em nenhum lugar eu realmente encontrei algo que me explicasse isso, além de você!
Skytiger 22/03