NewRelic - Как игнорировать часть веб-приложения

Я хотел бы сказать NewRelic, чтобы он не отслеживал подмножество моего веб-приложения. Например, я бы хотел исключить http://mysite/admin/*, чтобы NewRelic не считал трафик для этой части моего приложения и моего приложения.

Что-то похожее на то, как вы можете создавать фильтры в Google Analytics, было бы здорово.

4 ответа

Вы можете исключить транзакцию из подсчета в Apdex, вызвав IgnoreApdex в API-интерфейсе New Relic .NET. Добавить ссылку на NewRelic.Agent.Api.dll в своем проекте, затем вызовите этот метод в пути кода, обычном для ваших страниц администратора.

Вы также можете полностью проигнорировать транзакцию (без Apdex, без ответа и т. Д.), Вызвав IgnoreTransaction,

Я просто добавлю это, если кто-то еще ищет то же самое. Новые агенты теперь допускают исключение в config-файле, посмотрите ответ ниже из их поддержки:

Вторым менее навязчивым способом является использование "Списка исключений пути запроса". Элемент browserMonitoring в newrelic.config теперь поддерживает (начиная с версии агента 2.22.79.0) необязательный подэлемент с именем requestPathsExcluded, как показано ниже:

<browserMonitoring autoInstrument="true">
   <requestPathsExcluded>
      <path regex="About{1}?" />
      <path regex="mvcForm/Home/{1}?" />
   </requestPathsExcluded>
</browserMonitoring>

Каждый элемент "путь" должен содержать атрибут "регулярное выражение", значение которого является регулярным выражением, которое может быть оценено оценщиком регулярных выражений.NET Framework. См. http://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.90).aspx в качестве ссылки.

Немного поздно, но если вы используете MVC, вы можете просто поместить его в фильтр действий. Вам все еще нужно взять зависимость, но это будет, по крайней мере, намного более чистый способ ее вызова:

public class PreventNewRelic : ActionFilterAttribute
{
    public override void OnActionExecuting(HttpActionContext actionContext)
    {
        NewRelic.Api.Agent.NewRelic.IgnoreTransaction();
        base.OnActionExecuting(actionContext);
    }
}

Если это работает, если вы включили в свои страницы javascript NewRelic, то вы можете просто не включать его в эти страницы администратора.

Другие вопросы по тегам