`
tcwt008
  • 浏览: 11251 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

rails 邮件通知应用程序的异常

阅读更多
[size=x-large][color=olive]  邮件通知应用程序的异常
   所有的开发人员都知道,在程序开发过程中, 如果程序出现错误我们都可以在 日志 和浏览器里看到,但是,一旦 应用程序进入产品的阶段,报告错误的负担就到了用户的身上, 这可不是理想的方法的。 加入程序出现错误了,你想成为第一个知道的人,最好是用户还没有发现的时候你就已经修理好了。

   解决的方法:
  首先安装 异常通知插件, 可以将严重的应用程序错误发送给开发团队,从应用程序的根目录运行:
   
 $ ruby script/plugin install \
>     http://dev.rubyonrails.com/svn/rails/plugins/exception_notification/


安装插件后,下一步是通过 include ExceptionNotifiable 把 ExceptionNotifiable  模版混入 (Mix- in ) 你想用来 发送异常通知的控制器。为了使这种行为在整个应用程序范围有效, 将下面命令  放入 application.rb
   
app/controllers/application.rb:

class ApplicationController < ActionController::Base
  include ExceptionNotifiable
  #...
end
剩下的步骤是在 environment.rb 中为邮件制定一个或多个参数的接受者。
 
config/environment.rb:

ExceptionNotifier.exception_recipients = %w(rob@railscookbook.org
                                            bugs@railscookbook.org)
  默认的情况下, 插件并不为本地请求发送邮件通知。 如果你想为本地发送通知只需要修改 :environments/development.rb 下面的config 设为 false 。
 
environments/development.rb:

config.action_controller.consider_all_requests_local = false
  加入你的应用程序不是在开发模式下运行,这个选项设为 true 。 不管什么情况下,将他设为 false 会覆盖rails 认定的本地请求。 下面的命令湖告诉插件的程序在本地是失效的:
app/controllers/application.rb:

class ApplicationController < ActionController::Base
  include ExceptionNotifiable
  local_addresses.clear
  #...
end
  另一方面,如果你想扩展本地的定义并将一个特定的 Ip地址 包含到地址列表中,你可以将它们传递到控制器的 consider_local   方法。[/color][/size]
5
6
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics