You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(instrumentation): surface late-load framework warning regardless of startupLogs (#9068)
* fix(instrumentation): surface late-load framework warning regardless of startupLogs
The Next.js late-load warning was gated on startupLogs, which applyV5Overrides
defaults to off on v5. The users it targets run with no diagnostics enabled, so
the gate hid it from exactly the people whose integration had silently no-op'd.
It now flushes unconditionally through the always-on writer, independent of the
startupLogs-gated startup-log diagnostics, and drops the DATADOG TRACER
DIAGNOSTIC prefix that marked it as one.
Refs: #5430
Refs: #5432
* fix(instrumentation): keep broad load-order warnings behind startupLogs
Only the curated framework warnings (Next.js) must surface unconditionally: a
silently-disabled integration has no other signal. The broad "package X was
loaded before dd-trace" list is startup-diagnostic detail, gated behind
startupLogs with the DATADOG TRACER DIAGNOSTIC prefix and moved to its own queue
so the DD_TRACE_DEBUG-gated conflict warnings are unaffected.
* fix(instrumentation): prefix the Next.js late-load warning
The curated framework warning and the broad load-order list are the same kind of
diagnostic, so both carry the DATADOG TRACER DIAGNOSTIC prefix. The prefix is a
source marker, not a gating signal; the Next.js warning stays unconditional.
* test(instrumentation): pin late-load warning behavior across startupLogs
The subprocess tests only ran the warnings with startupLogs on (its v6 default),
so neither the unconditional Next.js warning nor the startupLogs gate on the broad
list was pinned: a regression on either would still pass on v6. Add the
startupLogs=off cases for both.
Drive-by fix:
* Trim the load-order warning comments to the why.
0 commit comments