如何在 Rails AMP 页面上禁用 newrelic_rpm
How to disable newrelic_rpm on Rails AMP page
AMP 验证器说 "The tag 'script' is disallowed except in specific forms."。
现在我知道这个标签 'script' 是由 newrelic_rpm 自动创建的。
我的问题是如何在 AMP 页面上禁用 newrelic_rpm。
我的 AMP 页面的 URL 就像 http://example.com/foo/bar.amp
。
所以我尝试了这样的设置 config/newrelic.yml:
common: &default_settings
license_key: foobarfoobarfoobarfoobar
app_name: Foobar
rules.ignore_url_regexes: ["amp", ".*amp"]
development:
<<: *default_settings
app_name: FooBar (Development)
developer_mode: true
但是没用。
我的项目环境:
- rails (4.1.8)
- ruby (2.2.3)
- newrelic_rpm (3.14.0.305)
我自己解决了
application_controller.rb
class ApplicationController < ActionController::Base
before_action :before_amp,
if: -> { request.path_parameters[:format] == 'amp' }
private
def before_amp
NewRelic::Agent.ignore_transaction
NewRelic::Agent.ignore_apdex
NewRelic::Agent.ignore_enduser
end
end
我会把这个问题留给遇到同样情况的人。
我也做了同样的事情。对@Awjecc 的回答进行微调
ApplicationController < ActionController::Base
before_action :ignore_newrelic, :if => :amp_request?
...
private
def ignore_newrelic
NewRelic::Agent.ignore_transaction
NewRelic::Agent.ignore_apdex
NewRelic::Agent.ignore_enduser
end
def amp_request?
request.format.try(:amp?)
end
end
AMP 验证器说 "The tag 'script' is disallowed except in specific forms."。
现在我知道这个标签 'script' 是由 newrelic_rpm 自动创建的。
我的问题是如何在 AMP 页面上禁用 newrelic_rpm。
我的 AMP 页面的 URL 就像 http://example.com/foo/bar.amp
。
所以我尝试了这样的设置 config/newrelic.yml:
common: &default_settings
license_key: foobarfoobarfoobarfoobar
app_name: Foobar
rules.ignore_url_regexes: ["amp", ".*amp"]
development:
<<: *default_settings
app_name: FooBar (Development)
developer_mode: true
但是没用。
我的项目环境:
- rails (4.1.8)
- ruby (2.2.3)
- newrelic_rpm (3.14.0.305)
我自己解决了
application_controller.rb
class ApplicationController < ActionController::Base
before_action :before_amp,
if: -> { request.path_parameters[:format] == 'amp' }
private
def before_amp
NewRelic::Agent.ignore_transaction
NewRelic::Agent.ignore_apdex
NewRelic::Agent.ignore_enduser
end
end
我会把这个问题留给遇到同样情况的人。
我也做了同样的事情。对@Awjecc 的回答进行微调
ApplicationController < ActionController::Base
before_action :ignore_newrelic, :if => :amp_request?
...
private
def ignore_newrelic
NewRelic::Agent.ignore_transaction
NewRelic::Agent.ignore_apdex
NewRelic::Agent.ignore_enduser
end
def amp_request?
request.format.try(:amp?)
end
end