NewRelic :: Rack中间件未暴露Sinatra :: Base设置

问题描述 投票:0回答:1

我有一个使用我的模块化Sinatra应用程序

run Rack::URLMap

添加各种服务,其中每个服务都是Sinatra :: Base

我已经在使用settings方法的服务之一中添加了中间件。看来NewRelic机架中间件没有公开这种方法。

class MyService < Sinatra::Base
  configure do
    set :optional_auth, [
      { method: :get, path: ''},
      { method: :get, path: '/:id'},
      { method: :get, path: '/:id/attachments'},
      { method: :get, path: '/:id/comments'}
    ]
    mime_type :json, 'application/json'
    use Rack::PostBodyContentTypeParser
    use MyMiddleware
  end

  get '/' ....

[在本地,一切正常,但是,在部署时,似乎在NewRelic :: Rack之后添加了MyMiddleware,因此,当调用中间件时,@ app不再是MyService,它是NewRelic :: Rack,没有公开的[ C0]方法。

其他人有没有经历过?我正在使用settings

运行该应用程序
rack newrelic
1个回答
0
投票

我能够通过更新中间件来解决此问题

© www.soinside.com 2019 - 2024. All rights reserved.