Ruby on rails Rails:如何使来自非web程序的ActiveRecord日志静音?

Ruby on rails Rails:如何使来自非web程序的ActiveRecord日志静音?,ruby-on-rails,logging,Ruby On Rails,Logging,我有一个标准的Rails应用程序,它使用数据库sqlite3和 webrick服务器正在开发中。Ruby 1.8.6,Rails 2.8.3^H^H3.8,没什么特别的 有一个单独的webcrawler应用程序,可以不断访问一组数据源, 拉下新项目,咀嚼它们,并将更新写入同一数据库, 使用ActiveRecord。当它运行时,我可以通过跟踪log/development.log来查看它的活动 奇怪的是:每当我的web应用程序第一次出现时,它都必须先等待 webrick服务器向stdout报告自上

我有一个标准的Rails应用程序,它使用数据库sqlite3和 webrick服务器正在开发中。Ruby 1.8.6,Rails 2.8.3^H^H3.8,没什么特别的

有一个单独的webcrawler应用程序,可以不断访问一组数据源, 拉下新项目,咀嚼它们,并将更新写入同一数据库, 使用ActiveRecord。当它运行时,我可以通过跟踪log/development.log来查看它的活动

奇怪的是:每当我的web应用程序第一次出现时,它都必须先等待 webrick服务器向stdout报告自上次web请求以来的所有活动, 然后它最终可以满足这个请求

所以我有两个问题:

1:我不需要批处理脚本来做ActiveRecord日志记录。我试过包装 Rails.logging.silence块中的主语句,但该语句无效。 我该如何压制它

2:为什么webrick报告的ActiveRecord活动与它无关 用什么

我想第三个问题是,一旦我提出动议,这是否会成为一个毫无意义的问题
到生产机器上的更好的服务器/MySQL。

Webbrick中的开发日志输出实际上只是
tail-f log/development.log
,因此,如果您看到不应该出现的消息,Webbrick没有必要出现问题


我不确定问题1的答案是什么,但问题3的答案是“是的,这是一个没有意义的观点”。生产日志中包含的详细信息是有限的,而开发日志有很多详细信息(用于帮助开发和调试)。

我建议您尝试使用mongrel或thin作为本地开发服务器。您还可能被缓冲日志欺骗,认为什么也没有发生,而实际上您只是在等待刷新缓冲区。