I want to monitor the latency of web page starting from hitting the URL from browser till page load. We are using react & node for front end and microservices for backend. So I study elasticsearch APM and RUM. But how I connect RUM data, node APM data, and Java APM data to the single transaction so that I will get a full understanding for a single request?
Thanks for the question!
We call it Distributed Tracing and it should work out of the box if you install agents on all those services and they are using technologies we support.
Follow through this nice blog post, which dives into that while following a demo app.
This will only cover RUM and Elastic APM Java Agent.
For me, flow is like this:
- RUM send data.
- then when request comes to Node js, node js APM agent gather data,
form node we are calling backend java API where we have elastic apm java agent.
I want all three metrics in a single transaction.
Also can be change/generate transaction id ?
Hi Praveen
If you follow the same pattern from the blog post and then instrument your node service following the node agent instructions that should work for you as you desire.
https://www.elastic.co/guide/en/apm/agent/nodejs/current/intro.html
It should create a trace something like this from RUM (Browser) -> Node -> Java
And yes for each transaction and trace a unique ID will be created and all transactions belonging to the same trace will have the same trace ID.
Unfortunately I don't have the code for that example, but yes it should be relatively straight forward if you follow the documentation.
This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.