This repository was archived by the owner on Jan 21, 2026. It is now read-only.
File tree Expand file tree Collapse file tree 4 files changed +33
-6
lines changed
Expand file tree Collapse file tree 4 files changed +33
-6
lines changed Original file line number Diff line number Diff line change @@ -94,6 +94,12 @@ export interface Config {
9494 */
9595 logLevel ?: number ;
9696
97+ /**
98+ * If set to true, prevents a warning from being emitted if modules are
99+ * required before the Trace Agent.
100+ */
101+ disableUntracedModulesWarning ?: boolean ;
102+
97103 /**
98104 * Whether to enable to Trace Agent or not.
99105 * Once enabled, the Trace Agent may not be disabled.
@@ -312,6 +318,7 @@ export interface Config {
312318 */
313319export const defaultConfig = {
314320 logLevel : 1 ,
321+ disableUntracedModulesWarning : false ,
315322 enabled : true ,
316323 enhancedDatabaseReporting : false ,
317324 rootSpanNameOverride : ( name : string ) => name ,
Original file line number Diff line number Diff line change @@ -114,6 +114,7 @@ function initConfig(userConfig: Forceable<Config>): TopLevelConfig {
114114
115115 return {
116116 [ FORCE_NEW ] : forceNew ,
117+ disableUntracedModulesWarning : mergedConfig . disableUntracedModulesWarning ,
117118 enabled : mergedConfig . enabled ,
118119 logLevel : lastOf (
119120 mergedConfig . logLevel ,
@@ -230,7 +231,12 @@ export function start(config?: Config): PluginTypes.Tracer {
230231 throw new Error ( 'Cannot call start on an already created agent.' ) ;
231232 }
232233 tracing . enable ( ) ;
233- tracing . logModulesLoadedBeforeTrace ( filesLoadedBeforeTrace ) ;
234+ if (
235+ normalizedConfig . enabled &&
236+ ! normalizedConfig . disableUntracedModulesWarning
237+ ) {
238+ tracing . logModulesLoadedBeforeTrace ( filesLoadedBeforeTrace ) ;
239+ }
234240 return traceAgent ;
235241 } finally {
236242 // Stop storing these entries in memory
Original file line number Diff line number Diff line change @@ -30,6 +30,7 @@ export type TopLevelConfig =
3030 | Forceable < {
3131 enabled : boolean ;
3232 logLevel : number ;
33+ disableUntracedModulesWarning : boolean ;
3334 clsConfig : Forceable < TraceCLSConfig > ;
3435 writerConfig : Forceable < TraceWriterConfig > ;
3536 pluginLoaderConfig : Forceable < PluginLoaderConfig > ;
Original file line number Diff line number Diff line change @@ -22,8 +22,10 @@ import * as log from '../src/logger';
2222import { TestLogger } from './logger' ;
2323import * as testTraceModule from './trace' ;
2424
25+ const UNTRACED_LOGS_WARNING = / S t a c k d r i v e r T r a c e r # s t a r t .* m o d u l e s .* l o a d e d .* b e f o r e .* t r a c e a g e n t .* : \[ .* s h i m m e r .* \] / ;
26+
2527describe ( 'modules loaded before agent' , ( ) => {
26- let logger : CaptureTestLogger ;
28+ let logger : CaptureTestLogger | null = null ;
2729
2830 class CaptureTestLogger extends TestLogger {
2931 constructor ( ) {
@@ -40,14 +42,25 @@ describe('modules loaded before agent', () => {
4042 shimmer . unwrap ( log , 'Logger' ) ;
4143 } ) ;
4244
45+ afterEach ( ( ) => {
46+ logger = null ;
47+ } ) ;
48+
4349 it ( 'should log if modules were loaded before agent' , ( ) => {
4450 testTraceModule . start ( ) ;
51+ assert . ok ( logger ) ;
4552 assert . strictEqual (
46- logger . getNumLogsWith (
47- 'warn' ,
48- / S t a c k d r i v e r T r a c e r # s t a r t .* m o d u l e s .* l o a d e d .* b e f o r e .* t r a c e a g e n t .* : \[ .* s h i m m e r .* \] /
49- ) ,
53+ logger ! . getNumLogsWith ( 'warn' , UNTRACED_LOGS_WARNING ) ,
5054 1
5155 ) ;
5256 } ) ;
57+
58+ it ( 'should not log if disableUntracedModulesWarning is set to true' , ( ) => {
59+ testTraceModule . start ( { disableUntracedModulesWarning : true } ) ;
60+ assert . ok ( logger ) ;
61+ assert . strictEqual (
62+ logger ! . getNumLogsWith ( 'warn' , UNTRACED_LOGS_WARNING ) ,
63+ 0
64+ ) ;
65+ } ) ;
5366} ) ;
You can’t perform that action at this time.
0 commit comments