Новый Relic ASP.NET Web API

Я пытаюсь использовать.NET-агент New Relic в своем веб-API, но все запросы отображаются как System.Web.Http.WebHost.HttpControllerHandler, это именно то, что говорит раздел известных проблем документов

MVC 4 (Примечание. New Relic предоставляет ограниченную поддержку веб-API ASP .NET для MVC4. Все транзакции веб-API будут отображаться как HttpControllerHandler, а не как имя контроллера веб-API.)

Я ищу любой обходной путь, который приводит к более удобочитаемой информационной панели. Есть ли какая-либо конфигурация в моем приложении или IIS, которую я мог бы изменить, чтобы иметь более значимую метрику в моей информационной панели? Или есть способ реализовать вызовы API, чтобы изменить это поведение?

3 ответа

Решение

NewRelic выпустил обновление.NET Agent, которое должно решить вашу проблему.

Смотрите: https://newrelic.com/docs/releases/dotnet. "Улучшена поддержка WebAPI. Теперь вы должны видеть веб-транзакции, сгруппированные по [controller].[Action], а не все транзакции WebAPI, сообщающие как System.Web.Http.WebHost.HttpControllerHandler."

Вы можете получить лучшие результаты, установив имена транзакций через API. Но до тех пор, пока New Relic не улучшит общую поддержку ASP.NET Web API, не существует способа произвольно встраивать вещи в веб-транзакции.

https://newrelic.com/docs/dotnet/the-net-agent-api SetTransactionName ()

Кроме того, если вы указываете определенные методы для трассировки, когда дела идут медленно и генерируется трассировка транзакции, вы увидите, что эти трассировщики пользовательских методов появятся в представлении дерева сведений трассировки.

https://newrelic.com/docs/dotnet/CustomInstrumentation

Это довольно старый пост, но я потратил немало времени на поиск аналогичной проблемы, и в моем случае эти задержки появлялись только во время POST, когда в http-сообщении содержалось содержимое запроса.

В долгосрочной перспективе это было связано с проблемами производительности сети (мобильные клиенты), и POST пытался прочитать текст сообщения, которое долго передавалось. Дело в том, что эти задержки при отображении в обработчике контроллера фактически просто ожидают передачи тела запроса.

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