NewRelic Игнорировать кометд LongPolling в Jetty

У меня есть веб-приложение Java, работающее на Jetty, которое подключается к серверу с помощью cometD для получения данных и возвращается через 25 секунд, если на сервере нет данных и повторно подключается, т. Е. Длинный опрос.

Я отслеживаю производительность сервера с помощью NewRelic, но эти соединения с длительным опросом искажают диаграммы производительности.

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

Любая помощь приветствуется!


person nvd_ai    schedule 25.01.2014    source источник


Ответы (2)


Вы не сможете просто исключить или проигнорировать время ожидания сервера и показать только фактическое время, когда сервер был занят, но вы можете полностью игнорировать транзакцию, если вам не нужно видеть эти показатели. https://docs.newrelic.com/docs/java/java-agent-api В этой документации рассказывается об использовании New Relics API для игнорирования транзакций.

person Jordan Kasper    schedule 29.01.2014

CometD отправляет длинные опросы на URL-адрес, который является базовым URL-адресом сервлета CometD с добавлением «/connect», см. параметр appendMessageTypeToURL в документация.

Например, если вы сопоставили сервлет CometD с /cometd/*, то длинные опросы отправляются на /cometd/connect.

Я не знаю NewRelic, но, возможно, вы можете отфильтровать запросы, оканчивающиеся на */connect, и собрать статистику по другим запросам, которая теперь не будет искажена длительным тайм-аутом опроса.

person sbordet    schedule 27.01.2014