我想为我的应用程序,这当然日志到不同的文件中,有人问一个问题定制记录:Setting up the logger in rails 3Rails 3中的自定义记录器?
但我希望有一个记录器,我可以用我自己的类名像拨打:
StatusLogger.info "something happend!!!"
我该怎么做?
我想为我的应用程序,这当然日志到不同的文件中,有人问一个问题定制记录:Setting up the logger in rails 3Rails 3中的自定义记录器?
但我希望有一个记录器,我可以用我自己的类名像拨打:
StatusLogger.info "something happend!!!"
我该怎么做?
你可以做到这一点与此代码
logfile = File.open('/path/to/log.log', 'a')
StatusLogger = Logger.new(logfile)
StatusLogger.info 'Hello World!'
你最有可能在初始化文件中配置,或者是你能做到这一点的环境中的文件,如果你想要的。
嘿德文,谢谢,当我尝试这个似乎工作,但没有在日志文件中,想法? – 2011-06-03 23:32:51
嗯....尝试添加logfile.sync = true,以便文件被刷新。 – 2011-06-03 23:47:33
感谢您的分享。 – 2013-01-25 20:10:52
你的意思是,就像在application.rb中:
StatusLogger = ActiveSupport::BufferedLogger.new(Rails.root.join('log/status.log'))
这个代码blob在一个名为config/initializer/log.rb的初始化程序中,例如 – pjammer 2013-03-05 15:41:27
注意:只要记得将它分配给一个变量,就可以将它放在应用程序的任何位置,而不仅仅是在application.rb中(而不是像这里所示的常量) – 2013-04-18 03:11:23
为什么要做到这一点,它的要好得多有一个日志文件,并解析它找到事件。 – 2011-06-03 22:55:14
我不知道,我想这是一个很好的观点,但就像我有这些通过cron运行的rake任务,就像我想在发生这种事情时记录一样,所以我可以回去看看它们发生的时间以及运行的任务的状态。什么是解决这个问题的好方法? – 2011-06-03 23:59:56
不会cron通过电子邮件将cronjob的输出发送到根目录?无论如何,这似乎是处理手头状况的好方法。当你习惯于处理web应用程序时,Cronjobs很难诊断和管理。也许问serverfault? – 2011-06-04 00:46:38