2013-04-05 20 views
6

i için tüm adımları uygulayın zaman bazılarınınkullanarak cronjob çalıştırılamıyor her raylar 3

gem 'whenever', :require => false 

çıktı gemfile içinde schedule.rb

require 'yaml' 
set :environment, 'production' 
set :output, { 
    :error => "/log/error.log", 
    :standard => "/log/cron.log" 
} 

every 1.minute do 
    runner "User.weekly_update" 
end 

yılında https://github.com/javan/whenever

atfen

localhost: ~/project $ ne zaman -i

[write] crontab file updated 
localhost

: ~/Proje $ crontab -l

# Begin Whenever generated tasks for: /home/bacancy/project/config/schedule.rb 
* * * * * /bin/bash -l -c 'cd /home/bacancy/project && script/rails runner -e  production '\''User.weekly_update'\'' >> /log/cron.log 2>> /log/error.log' 

# End Whenever generated tasks for: /home/bacancy/project/config/schedule.rb 

# Begin Whenever generated tasks for: store 
* * * * * /bin/bash -l -c 'cd /home/bacancy/project && script/rails runner -e development '\''User.weekly_update'\''' 

# End Whenever generated tasks for: store 

# Begin Whenever generated tasks for: lapulguilla 

# End Whenever generated tasks for: lapulguilla 

ve sonra ben yazın

localhost:

* * * * * /bin/bash -l -c 'cd /home/bacancy/project && script/rails runner -e production '\''User.weekly_update'\'' >> /log/cron.log 2>> /log/error.log' 

## [message] Above is your schedule file converted to cron syntax; your crontab file was not updated. 
## [message] Run `whenever --help' for more options. 

Kullanıcı modelinde i var ne zaman ~/proje $ tanım self.weekly_update

def self.weekly_update 
    puts "cronjobs is called in every minutes" 
end 
+0

düşünüyorum değişiklikleri hissetmeye bazı kayıtları yok edilmelidir. Hangi hata yaptım ki? Bunu her dakika nasıl çalıştırırım? –

+1

Merhaba Nirav, sorunuzu gözden geçirdim ve görüşüme göre cron işi çalışıyor olmalı ama mantıkla ilgili bir hata var, hata kodunu '/log/error.log' dosyasından gönderebilirsiniz ... – Jeet

+0

Merhaba Jeet, bu cronjobs için bile günlük dosyaları oluşturmaz. herhangi bir özel sebep mi? hata zaten bahsetmiştim. Her ne zaman çalışırsam, mükemmel bir şekilde çalışmaz. ana gönderinin son satırına bakın. –

cevap

1

Her şeyiniz doğru, sadece arka planda bir şey yazdırmak için cron görevini yaptığınızı söylüyorsanız, bunu yapıyorsunuz ve bunu gözlemleyebileceksiniz.

Bunun yerine oluşturmak deneyin ya ben her dakika içinde cron işi çalışmadığı :)