我正在开发一个事件处理程序以向远程 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 已经一年多了,但这是我第一次使用机架和中间件。
任何建议表示赞赏!