如何区分Newrelic中的Rails API调用?

Eki*_*bal 9 ruby ruby-on-rails newrelic newrelic-platform ruby-on-rails-5

我正在使用Rails 5来提供网站和RESTful API,我使用Newrelic(newrelic_rpmgem)来监控应用程序性能.

目前,gem监视器向所有请求提供一个应用程序名称.

让我们说我的路线看起来像:

Rails.application.routes.draw do
  resources :users
  namespace :api do
    namespace :v1 do
      resources :users, only: :index
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

以下/users是Web应用程序api/users的路径,也是API的路径.现在,一旦我使用newrelic_rpm它将看不到API和Web之间的差异.

我想为报告进行更多分离,以便我可以将Web请求记录到特定的应用程序名称,例如:web_app以及API的另一个名称api_app.

有帮助吗?

ano*_*rmh 5

您无法使用当前版本的New Relic代理执行此处概述的操作.这不是代理人的工作方式; 这不是New Relic的工作方式.

您有一个应用程序,其性能应被视为一个整体.如果您能够将性能数据路由到不同的应用程序,您怎么能看到一个应用程序中的问题影响其他应用程序?当它们位于不同的应用程序中时,如何关联事件和指标?

更具体地说,有人可以攻击应用A并对应用B产生负面影响,这可能会出现在应用A,应用B或两者的效果数据中.这就是为什么不支持这一点的原因:您不会在单个服务器上运行的单个应用程序的性能数据中设置人工墙.

按照预期的方式使用代理,并使用APM中New Relic事务页面Web事务分析报告过滤到您关心的事务.您也可以使用洞察事件探险家过滤器和图表Transaction数据.