Come funzionano i cron job

In fase di debug in Magento 1.9, uno strumento che può essere molto utile è la tabella cron_schedule, dove appunto troviamo le informazioni sullo stato dei cron.

Come esempio di cron potremmo prendere core_clean_cache, definito nel config.xml del modulo Mage_Core

configurazione cron_clean_cache
configurazione cron_clean_cache

Dalla tabella cron_schedule possiamo ricavare molte informazioni:

  • job_code: è il nome del cron, che corrisponde al nodo child diretto nella sezione jobs del file di configurazione;
  • status: di default, una volta avvenuta la programmazione, è assegnato il valore “pending”. Gli altri stati altri stati comuni sono:
    • “running” quando l’esecuzione è in corso;
    • “success” in caso di conclusione senza errori;
    • “error” in caso di errore;
  • messages: contiene il valore restituito oppure in caso di errore, il dettaglio dell’eccezione che si è verificata;
  • scheduled_at: corrispondente all’ora per cui è stato programmato;
  • executed_at: rappresenta l’istante in cui parte l’esecuzione,  e non è detto che coincida con l’istante per cui è stato programmato. Infatti, può capitare che ci siano altri cron programmati per la stessa ora, come accade nell’esempio sotto per core_clean_cache e mageunbox_cron1, entrambi pianificati per le 14:20, ma in realtà il secondo viene eseguito solo dopo la fine del primo;

tabella cron_schedule

  • finished_at: è l’istante in cui termina l’esecuzione

Lascia un commento