Feature Idea: ExternalServices: show percentage per Service API path

This link displays External Services:
https://rpm.newrelic.com/accounts/964598/applications/35305499/externals#id=5b2245787465726e616c2f70617261736f66746177737161706572662e6b64632e6361706974616c6f6e652e636f6d2f616c6c222c22225d

I have 3 APIs with same base context URL.
https://server:port/…/Service1
https://server.port/.../Service2
https://server.port/.../Service3

In the UI, it shows “server” as external service.
Is it possible to show per service instead of server?
In that way, I can see time consumed by each URL instead of one server.

Thanks.


New Relic edit

  • I want this, too
  • I have more info to share (reply below)
  • I have a solution for this

0 voters

We take feature ideas seriously and our product managers review every one when plotting their roadmaps. However, there is no guarantee this feature will be implemented. This post ensures the idea is put on the table and discussed though. So please vote and share your extra details with our team.

@jaehee.roh this is a great question. The Java agent will show links to the individual endpoints if (and only if) the other application, meaning the API/endpoint being called, is also being monitored by a New Relic ‘language agent’. By ‘language agent’, I mean the Java, .NET, Node, PHP, Python or Ruby agent.

Also, the two applications must be part of the same account (or sub-accounts under the same parent account). Clearly, we would never provide APM data links between accounts which were unrelated.

Is this endpoint application also being monitored by New Relic? If it is and the endpoints are still not shown, please let us know and we will be happy to troubleshoot to find out why this isn’t happening.

If it is not being monitored, please let us know if there are any question getting one of our agents installed.

Hi,

I am running performance test using mock endpoint. This has one entry endpoint and have different path for different service.
Like my example, same base root URL but different path.
All are in part of same account.
These services are monitored by New Relic. I see in transaction trace, it shows different path (sometimes, it does how).
In production, we use different context path so I can see different external services.
service1: https://server1:port/service1
service2: https://server2:port/service2
New Relic shows
server1
server2

In perf environment, we use same context path and different path for each service
service1: https://mockserver:port/service1
service2: https://mockserver:port/service2
New Relic shows
mockserver

It is not big issue but if New Relic supports like below, it will be great.
mockserver/service1
mockserver/service2

Thanks.

I checked the externals for that application, but the external endpoints themselves do not appear to have a New Relic language agent installed. If they did, the endpoints would be differentiated by the path segments of the URLs.

@jaehee.roh, I have entered a feature request asking that our Java agent do this by default (split external endpoints by path as well as host) even when the endpoint does not have a New Relic language agent installed.

If there are questions about any of this, please let us know.

Did this ever get implemented? I’m having this exact issue where I’ve got an issue with a down stream call, but I have 0 ability to see which of the 100 url endpoints it might be using and if there is 1 that is having a specific problem.

Hey there @bruce.deen - I had to do some digging, but this is still not implemented. I have converted this post to a feature idea so that others can weigh in as well. I also communicate this to the product teams. Sorry I didn’t have better news for you!

Hi folks,

We have no plans to implement further breakdown of External metrics, beyond the host. Currently, you could use custom instrumentation to collect metrics during performance testing that differentiate by service endpoint.

The dimensional metrics data type, collected by our Metrics API (https://docs.newrelic.com/docs/data-ingest-apis/get-data-new-relic/metric-api/introduction-metric-api), makes it possible to collect external call metrics broken down by whatever attribute you like, but that data doesn’t yet show up in the Externals page today, and isn’t (yet?) collected by our agents as dimensional metrics.

Ralph

1 Like