Я использую newrelic ruby agent, и он вставляет некоторый js-код в каждый hmtl-ответ от моего приложения, например в голове: var NREUMQ = []; NREUMQ.push (["mark", "firstbyte", new Date(). getTime()]);Strip newrelic rum.js скрипты для определенных маршрутов в rails
Проблема в том, что мы разрешаем пользователям размещать контент, а иногда и размещать html-файлы. Затем newrelic вставляет эти строки в свой html, когда они нажимают на загрузку ...
Пример html, загружаемый через сайт с новыми дополнениями. Любые советы о том, как разделить материал newrelic только для определенных маршрутов или любых других методов, которые мы можем использовать только для определенных кодов кода?
HTTP/1.1 200 OK
Server: nginx/1.1.8
Date: Thu, 26 Apr 2012 19:25:54 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 1176
Connection: keep-alive
Vary: Accept-Encoding
X-Powered-By: Phusion Passenger (mod_rails/mod_rack) 3.0.11
X-UA-Compatible: IE=Edge,chrome=1
Content-Transfer-Encoding: binary
X-Runtime: 0.340155
Progma: cache
Content-Disposition: attachment; filename="404.html"
Expires: 0
Cache-Control: private
Set-Cookie: ;)
Status: 200
<!DOCTYPE html>
<html>
<head><script>var NREUMQ=[];NREUMQ.push(["mark","firstbyte",new Date().getTime()]);</script>
<title>The page you were looking for doesn't exist (404)</title>
<style type="text/css">
body { background-color: #fff; color: #666; text-align: center; font-family: arial, sans-serif; }
div.dialog {
width: 25em;
padding: 0 4em;
margin: 4em auto 0 auto;
border: 1px solid #ccc;
border-right-color: #999;
border-bottom-color: #999;
}
h1 { font-size: 100%; color: #f00; line-height: 1.5em; }
</style>
</head>
<body>
<!-- This file lives in public/404.html -->
<div class="dialog">
<h1>The page you were looking for doesn't exist.</h1>
<p>You may have mistyped the address or the page may have moved.</p>
</div>
<script>(function(){var d=document;var e=d.createElement("script");e.async=true;e.src="https://d1ros97qkrwjf5.cloudfront.net/30/eum/rum.js";var s=d.getElementsByTagName("script")[0];s.parentNode.insertBefore(e,s);})();NREUMQ.push(["nrf2","beacon-1.newrelic.com","9dfe439095",309309,"blablabla==",0,336,new Date().getTime()])</script></body>
</html>
Я попытался с помощью: включают NewRelic :: Agent :: Измерительные приборы :: ControllerInstrumentation newrelic_ignore: только => "загрузить" В мой контроллер, но это, кажется, не имеют никакого эффекта.
Когда я перезагрузить мой пассажир, код не добавляется к любой странице на короткое время, после того, что она ко всем страницам, даже те, которые имеют newrelic_ignore
после разговора с New Relic Customer Support, это может быть выполнено только на глобальном уровне, а затем добавлено отдельно. – Michael
Похоже, вы можете использовать черный список для контроллера, используя [newrelic_ignore_enduser] (https://docs.newrelic.com/docs/agents/ruby-agent/installation-configuration/ignoring-specific-transactions#page-load-timing-rum) – Arth