我试图创建一个运行控制器方法的cron作业,但是我遇到了麻烦。
设置\ schedule.rb
every 1.minutes do
runner "Reset.reset"
end
LIB \ reset.rb
class Reset
def reset
logger.debug("This is the cron job")
end
end
我还运行了--update-crontab来更新cron作业。
为什么日志中没有显示记录器消息?
感谢您的帮助。
答案 0 :(得分:1)
那是因为Reset.reset
试图在Reset类上调用reset方法。也就是说,Reset.reset
尝试调用类方法。
您的重置方法是一种实例方法。要定义Reset.reset
类方法,请使用:
class Reset
def self.reset
logger.debug("This is the cron job")
end
end
此外,您还需要确保您拥有self.logger
类方法,否则该代码将会死亡。
最后,对于你自己的启发:Reset
因为你写的不是一个控制器。它只是一个普通的旧红宝石物体。