Error Tracking Troubleshooting

If you experience unexpected behavior with Error Tracking, the troubleshooting steps below can help you resolve the issue quickly. If you continue to have trouble, reach out to Datadog support.

Datadog recommends regularly updating to the latest version of the Datadog tracing libraries, mobile SDKs, and web SDKs, as each release contains improvements and fixes.

Errors are not found in Error Tracking

Logs

Make sure the error message has the required attributes, and Error Tracking for Logs is activated.

This example query searches for logs meeting the criteria for inclusion in Error Tracking.

APM

To be processed by Error Tracking, a span must have these attributes:

  • error.type
  • error.message
  • error.stack

Note: The stack must have at least two lines and one meaningful frame (a frame with a function name and a filename in most languages).

Only errors from service entry spans (the uppermost service spans) are processed by Error Tracking. Error Tracking primarily captures unhandled exceptions, and this behavior is in place to avoid capturing errors handled internally by the service.

This example query searches for spans meeting the criteria for inclusion in Error Tracking.

Workarounds for bubbling up child span errors to service entry span

Some tracers provide a way to access the root span and bubble up the error from child to root.

final Span span = GlobalTracer.get().activeSpan();
if (span != null && (span instanceof MutableSpan)) {
    MutableSpan localRootSpan = ((MutableSpan) span).getLocalRootSpan();
    // do stuff with root span
    localRootSpan.setTag("<TAG>", "<VALUE>");
}
context = tracer.get_call_context() 
root_span = context.get_current_root_span() 
root_span.set_tag('<TAG>', '<VALUE>') 
current_root_span = Datadog.tracer.active_root_span
current_root_span.set_tag('<TAG>', '<VALUE>') unless current_root_span.nil?

RUM

Error Tracking only processes errors that are sent with the source set to custom, source or report, and contain a stack trace. Errors sent with any other source (such as console) or sent from browser extensions are not processed by Error Tracking.

This example query shows RUM errors that meet the criteria for inclusion in Error Tracking.

No error samples found for an issue

All errors are processed, but only retained errors are available in the issue panel as an error sample.

APM

Spans associated with the error need to be retained with a custom retention filter in order for samples of that error to show up in the issue panel.