• Forums
    • Public Forums
      • Community Connect
      • Dynatrace
        • Dynatrace Open Q&A
      • Application Monitoring & UEM
        • AppMon & UEM Open Q&A
      • Network Application Monitoring
        • NAM Open Q&A
  • Home /
  • Public Forums /
  • Application Monitoring & UEM /
  • AppMon & UEM Open Q&A /
avatar image
Question by Kaarel K. · Jun 28, 2017 at 02:59 PM · appmon agent monitoring 7.0 appmon 7 java adk transactionflow

How to monitor asynchronous External API call with non http based protocol?

Hi,

our java application communicates over a custom binary protocol with a external service where is no agent installed. The external API is called by our application in a asynchronous way.

We have 3 methods. First one that sends out the request. second one that is polling for the status of the sent request and the last one will accept the response for the call made by the first method.

Question:

Is it possible to measure the duration of this call(we can instrument our application with appMon agent)?

Can we use ADK to achieve it?

If its not possible to get this working, can we use Observed tiers feature for this, to make external API visible on transaction flow dashlet?

Comment
Sun K.

People who like this

1 Show 1
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

avatar image Patrick H. · Jun 28, 2017 at 08:40 PM 0
Share

This is quite interesting. It should be possible with the adk, with the tagging adk you will be able to get the link between caller and callee, the Documentation for it is very good: https://www.dynatrace.com/support/doc/appmon/integrations-and-extensions/development-kits/agent-development-kit-adk/tagging-adk-for-java/

I had a similar problem at a customer with a .NET application which is executing a call on one thread, then kills that thread and accepts the response on another thread, once it recevies it.

1 Reply

  • Sort: 
  • Most voted
  • Newest
  • Oldest
avatar image

Answer by Christian S. · Jun 29, 2017 at 12:21 PM

hi Kareel,

so if I understand you correctly, you want to monitor the time of the whole async call, meaning from request sent to response received, correct?

so what you would ideally need would be a functionality to mark calls as external over multiple methods, calculating the response time as a difference between the last method and the first, right? unfortunately such functionality does not exist right now.

so let's go through your options:

you could use the ADK, yes. but just using the Java Tagging ADK will only help you if you have an Agent or an ADK on the other side of the external call. if that's possible you could measure the time it takes on the server-side, but still not on the client-side. it's not possible with the Tagging ADKs to create PurePaths nodes or measure times right now.

you can use the external API services to mark those methods as external calls. but still you can only define one method as external call, not multiple ones. so you would get it as external calls in the Transaction Flow, but still the time measurement would not be correct.

the only meaningful way that would occur to me would be if you can find a method on the client-side which is basically a parent around the request sending and response receiving. this method could be used for an external API call then.

however, if you can't find such a method, I don't have any other options on my mind.

HTH, Christian

Comment
Florian O.
Sun K.

People who like this

2 Show 0 · Share
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

How to get started

First steps in the forum
Read Community User Guide
Best practices of using forum

NAM 2019 SP5 is available


Check the RHEL support added in the latest NAM service pack.

Learn more

LIVE WEBINAR

"Performance Clinic - Monitoring as a Self Service with Dynatrace"


JANUARY 15, 3:00 PM GMT / 10:00 AM ET

Register here

Follow this Question

Answers Answers and Comments

21 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Agent instrumentation is not available

Dynatrace Log4net log from MongoDB

Web Service Failure Rate is Always 0%

Tibco Support

User Actions Not coming in a correct system profile

Forum Tags

dotnet mobile monitoring load iis 6.5 kubernetes mainframe rest api dashboard framework 7.0 appmon 7 health monitoring adk log monitoring services auto-detection uem webserver test automation license web performance monitoring ios nam probe collector migration mq web services knowledge sharing reports window java hybris javascript appmon sensors good to know extensions search 6.3+ server documentation easytravel web dashboard kibana system profile purelytics docker splunk 6.1 process groups account 7.2 rest dynatrace saas spa guardian appmon administration production user actions postgresql upgrade oneagent measures security Dynatrace Managed transactionflow technologies diagnostics user session monitoring unique users continuous delivery sharing configuration alerting NGINX splitting business transaction client 6.3 installation database scheduler apache mobileapp RUM php dashlet azure purepath agent 7.1 appmonsaas messagebroker nodejs 6.2 android sensor performance warehouse
  • Forums
  • Public Forums
    • Community Connect
    • Dynatrace
      • Dynatrace Open Q&A
    • Application Monitoring & UEM
      • AppMon & UEM Open Q&A
    • Network Application Monitoring
      • NAM Open Q&A