Multi-part form and distributed tracing

The only request in my application that does not seem to be available in distributed tracing on either the browser or Node.js side is one that deals with a multi-part form. Is there something special with this type of request that would leave me with a missing/orphaned root span?

I can confirm that Node.js receives the tracestate and traceparent headers from the browser request, but the request is never displayed in “distributed tracing” in New Relic on either application.

@acicero Hi there! Nothing related to a multi-part form should cause any particular issues, though it’s possible the browser agent isn’t picking up the data as an AjaxRequest event. Do you see any evidence of your requestUrl in your Ajax data if you run a query like:

SELECT * FROM AJAXREQUEST where appName = 'name-of-browser-app' where requestUrl LIKE '%api/placeholder/etc%' 

I’m including a fantastic troubleshooting guide for distributed tracing below that should help rule out things in the frontend.

Hopefully that gets you pointed in the right direction, though let us know if you need anything else!

1 Like

Thanks for the info, I am only seeing the specific request showing up in the AJAXREQUEST query after making some modifications on the frontend, which is unexpected but interesting. I will dig into the troubleshooting guide to see what else I can figure out.

Sounds good! Please reach out again if there’s anything else you find out or have questions on!

The Ajax monitor section visually shows the request I’m after showing up (bar graphs), but it does not show up in the following query: SELECT * from AjaxRequest where appName = ‘myApp’ SINCE 1 hour ago

Is there anything you can think of that makes ajax data report differently between the two?

Great question! The data you are seeing in the Ajax UI are metrics and the AjaxRequest is an event type queryable via NRQL.

I’m including this really helpful post that goes into detail on how the agent collects request data.

Cheers,

1 Like