Cos'è Cron?
Prima di iniziare a usare il ogni volta che gemma , dobbiamo conoscere Cron. cron è un'utilità che viene utilizzata per pianificare i comandi a intervalli specificati ed è molto probabilmente già presente sul tuo computer. È ideale per automatizzare attività ricorrenti, chiamate cron job. I lavori Cron possono essere scritti direttamente in un file di configurazione chiamato crontab, tuttavia la sintassi può essere un po' confusa (ci sono molti asterischi):
# ┌───────────── minute (0 - 59) # │ ┌───────────── hour (0 - 23) # │ │ ┌───────────── day of the month (1 - 31) # │ │ │ ┌───────────── month (1 - 12) # │ │ │ │ ┌───────────── day of the week (0 - 6) # │ │ │ │ │ # │ │ │ │ │ # │ │ │ │ │ # * * * * *
Il ogni volta che gemma aggiunge un livello di semplicità ai lavori cron e fornisce una sintassi molto più leggibile per scriverli. Impostiamolo:
- Installa quando vuoi
gem install whenever
o aggiungi quanto segue al tuo Gemfile e poi esegui |_+_|
bundle
2. Creare un gem 'whenever', require: false
file eseguendo quanto segue:
**schedule.rb**
3. Imposta il tuo output
Il |_+_| file ha alcuni esempi commentati per riferimento. Una cosa che deve essere aggiunta è dove verranno registrati i lavori cron una volta completati. Possiamo mettere il nostro in cron.log, ma questo può essere personalizzato:
bundle exec wheneverize .
Questo passaggio è davvero importante, perché se provi a eseguire un semplice cron job, come stampare qualcosa, verrà stampato ovunque imposti l'output e _non _il tuo terminale.
Quattro. Configurazione del cron job e dell'intervallo
Ogni volta che ha una sintassi meravigliosamente semplice, puoi controllare il documentazione per ogni specifica esigenza di intervallo. Per il nostro esempio, eseguiamo alcune attività ogni minuto:
crea un account per l'app in contanti con e-mail
schedule.rb
Ogni volta che offre alcuni tipi di lavoro diversi per esprimere le attività. Useremo Rastrello , ma controlla tutte le opzioni di seguito:
set :output, 'log/cron.log'
every 1.minute do #task will go here end
runner MyModel.some_process
- Puoi anche definire il tuo tipo di lavoro. Le istruzioni sono riportate nel ogni volta che la documentazione .
#sviluppo-ruby-on-rails #sviluppo-web #cron #ruby-on-rails #automation
medium.com
Automatizza le attività in Rails usando la gemma Whenever
Una procedura dettagliata dell'implementazione di cron job utilizzando la gemma ogni volta. Prima di poter iniziare a usare la gemma ogni volta, dobbiamo conoscere Cron. Cron è un'utilità che viene utilizzata per pianificare i comandi a intervalli specificati e molto probabilmente è già sul tuo computer. È ideale per automatizzare attività ricorrenti, chiamate cron job. I lavori Cron possono essere scritti direttamente in un file di configurazione chiamato crontab