You have used the Trace API to report data but either don't see your data in New Relic or you have questions about it.
Here are some ideas for troubleshooting Trace API-reported data:
- To verify span data has been reported, run a NRQL query in the query builder for the span just uploaded. You must be in the same New Relic account used to report the trace data (same license key). Example query:
FROM Span SELECT * WHERE trace.id = '123456'
- If a call generates a HTTP response code, look up the response code meaning.
- If rate-limiting issues occur, we generate an
NrIntegrationError. You can run a NRQL query of that event to see if your trace data encountered an issue. If you want to correlate your
NrIntegrationErrors, you can use the
requestIdprovided by each Trace API request.
If your spans have timestamps, be sure they meet the following guidelines:
- Span timestamps must have occurred within last 20 minutes.
newrelic-format timestamps must be in milliseconds. You can get the current time in milliseconds at currentmillis.com.
zipkin-format timestamps must be in microseconds.
- Timestamps should be in UTC.
- Calls to the endpoint are not idempotent. This means if you send multiple traces with the same
trace.id, it will result in fragmented traces in the UI due to ambiguous trace parent-child data.
- Double check that your payload is valid. For
newrelic-format traces, one issue may be that key-value pairs haven't been placed in the
- Confirm that your trace has a root span (a null
parent.idon one span). Example query:
FROM Span SELECT * WHERE trace.id = '123456' AND parent.id IS NULL
For more on how Trace API data transmission is validated, see Validation.