如何使用rails清除日志?

时间:2018-05-15 11:56:06

标签: ruby-on-rails scheduled-tasks

我想知道如何使用调度程序清除登录?我试过 rake log:clear

应用程序/ LIB /任务/ schedular.rake

desc'清除日志'   任务:clear_log => :环境呢     DailyAttendance.clear_logs   端

错误

捆绑exec rake atte_task:clear_log

rake aborted!

NoMethodError:未定义的方法clear_logs' for #<Class:0x000000098863b0> /home/cpu053/.rvm/gems/ruby-2.2.1/gems/activerecord-4.2.4/lib/active_record/dynamic_matchers.rb:26:in method_missing&#39; /home/cpu053/workspace/hrms/lib/tasks/schedular.rake:20:in block (2 levels) in <top (required)>' /home/cpu053/.rvm/gems/ruby-2.2.1/gems/rake-12.0.0/exe/rake:27:in&#39; /home/cpu053/.rvm/gems/ruby-2.2.1@global/bin/bundle:23:in load' /home/cpu053/.rvm/gems/ruby-2.2.1@global/bin/bundle:23:in&#39; 任务:TOP =&gt; atte_task:clear_log (通过使用--trace运行任务查看完整跟踪)

2 个答案:

答案 0 :(得分:1)

有两种可能性

1)你的rake任务执行命令错误的名称空间请试试这个。

  

bundle exec rake schedular:clear_log

2)clear_logs方法中的DailyAttendance模型错误请自行设定方法。

  

self.clear_logs

答案 1 :(得分:0)

<强>配置/ schedule.rb

每4小时做一次

   rake 'log:clear'