【发布时间】:2013-12-17 09:17:12
【问题描述】:
我正在开发一个事件处理程序来向远程 api 报告异常(类似于 newrelic 代理),如果不在 environment.rb 文件中执行它,我找不到将我的中间件添加到机架的方法。
我不想在 environment.rb 文件中这样做,因为我打算把它变成一个 gem,我想最小化安装过程。
这是我想添加到我的应用程序中的简单中间件:
#/lib/response_timer.rb
class ResponseTimer
def initialize(app)
@app = app
end
def call(env)
#do something here
@app.call(env)
end
end
我能找到包含它的唯一方法是将其添加到我的环境配置中:
config.middleware.use "ResponseTimer"
我使用 Rails 已经一年多了,但这是我第一次使用机架和中间件。
感谢任何建议!
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-3 rack rack-middleware