on 19 Dec 2024 10:53 AM
Your web Application traffic is not appearing in defined Dynatrace application or is not being captured. The best way to troubleshoot this is to try to narrow down where the problem is coming from, because it could be an injection issue, a detection issue, going to a different application.....
The first step would be to go to the website and open the dev-tools and check the network tab, see if you're able to spot the Dynatrace RUM JavaScript request:
The RUM JavaScript may look different, i.e. '2f34badcac72bfa2_complete.js' or be injected inline directly in HTML starting with '<script type="text/javascript" data-dtconfig='.
That's why, the ultimate way to check for the injection, is to run 'dT_.gdi()' in the console of the browser, if an injection is successful you would get something similar to this:
If the console returns a red output like the following then there is no injection on the website:
This means that the traffic is being captured but is being sent to a different application (we're assuming that the beacon requests 'rb_' or 'bf_' are being sent correctly) in Dynatrace. To find out which application you can do multiple things here:
Run 'dT_.cfgO()' in the console. This will return multiple pieces of information one of which is the application ID that is handling the injection. This ID is present in the URL of the application page in Dynatrace:
The third method is better because it will help you solve the problem faster (but here we're also assuming that correlation is working, so the User Actions are linked to the Distributed Traces), by checking your session in Dynatrace you're able to jump to the traces captured in Dynatrace. And from those traces you're able to see what the full URL looks like when it was captured:
You will either have to fix the detection rule or fix whatever is changing his URL (Dynatrace does not manipulate the URL we only capture it).
Open the dev-tools, enable dtHealthCheck and load the website.
Check the document request of the page, see if you find 'x-dthealthcheck' in the response headers in the Headers part of the request, if you don't see it, skip to the next point. You should see something similar to this:
Usually dtHealthCheck provides us with the information needed, but you might come across a situation where the headers don't show up and this is due to 2 possible reasons:
Either the customer didn't disable cache while recording the HAR, let him toggle 'disable cache' and test it in an incognito window:
The application is served by a CDN which doesnt have oneagent installed in this case automatic injection is not possible.
In this case you need to ask the customer to check it on his side.
If this article did not help, please open a support ticket, mention that this article was used and provide the following in the ticket: