我正在尝试在运行rake任务时写入我的日志文件.它在开发模式下工作正常,但是一旦切换到生产环境,就不会向日志文件写入任何内容.
我在这里读到
How do I use a custom log for my rake tasks in Ruby on Rails?
这是正常的行为,并在灯塔中找到了#wontfix票.
我的问题:有没有办法输出,在我的rake任务运行时发生了什么?它执行一些爬行并运行数小时.我希望输出进入特定的日志文件,如/log/crawler.log
现在我只是用这个命令写入日志文件:
ActiveRecord::Base.logger.info "Log Text"
谢谢!
解决方法
您遇到的问题是rails忽略了生产模式中的“信息”级别日志.
我建议阅读:http://www.ruby-doc.org/stdlib/libdoc/logger/rdoc/classes/Logger.html
并创建自己的记录器:
logger = Logger.new('logfile.log') logger.info "Something happened"