⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 19 - automatically sending application errors to your email.rb

📁 O Reilly Ruby Cookbook source code
💻 RB
字号:
class ApplicationController < ActionController::Baseprivate   def log_error(exception)       super      Notification.deliver_error_message(exception,        clean_backtrace(exception),        session.instance_variable_get("@data"),        params,        request.env      )   endend#---class Notification < ActionMailer::Base  def error_message(exception, trace, session, params, env, sent_on = Time.now)    @recipients         = 'me@mydomain.com'    @from               = 'error@mydomain.com'    @subject            = "Error message: #{env['REQUEST_URI']}"     @sent_on            = sent_on    @body = {      :exception => exception,      :trace => trace,      :session => session,      :params => params,      :env => env    }  endend#---<!-- app/views/notification/error_message.rhtml -->Time: <%= Time.now %>Message: <%= @exception.message %>Location: <%= @env['REQUEST_URI'] %>Action: <%= @params.delete('action') %></td></tr>Controller: <%= @params.delete('controller') %></td></tr>Query: <%= @env['QUERY_STRING'] %></td></tr>Method: <%= @env['REQUEST_METHOD'] %></td></tr>SSL: <%= @env['SERVER_PORT'].to_i == 443 ? "true" : "false" %>Agent: <%= @env['HTTP_USER_AGENT'] %>Backtrace<%= @trace.to_a.join("</p>\n<p>") %>Params<% @params.each do |key, val| -%>* <%= key %>: <%= val.to_yaml %><% end -%>Session<% @session.each do |key, val| -%>* <%= key %>: <%= val.to_yaml %><% end -%>Environment<% @env.each do |key, val| -%>* <%= key %>: <%= val %><% end -%>#---

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -