@@ -44,6 +44,7 @@ public static class CoreTestConfiguration
4444 private static ConnectionString __connectionString = GetConnectionString ( ) ;
4545 private static DatabaseNamespace __databaseNamespace = GetDatabaseNamespace ( ) ;
4646 private static MessageEncoderSettings __messageEncoderSettings = new MessageEncoderSettings ( ) ;
47+ private static TraceSource __traceSource ;
4748
4849 // static properties
4950 public static ICluster Cluster
@@ -75,6 +76,11 @@ public static SemanticVersion ServerVersion
7576 }
7677 }
7778
79+ public static TraceSource TraceSource
80+ {
81+ get { return __traceSource ; }
82+ }
83+
7884 // static methods
7985 public static ClusterBuilder ConfigureCluster ( )
8086 {
@@ -133,12 +139,12 @@ public static ClusterBuilder ConfigureLogging(ClusterBuilder builder)
133139 return builder ;
134140 }
135141
136- var traceSource = new TraceSource ( "mongodb-tests" , defaultLevel ) ;
137- traceSource . Listeners . Clear ( ) ; // remove the default listener
142+ __traceSource = new TraceSource ( "mongodb-tests" , defaultLevel ) ;
143+ __traceSource . Listeners . Clear ( ) ; // remove the default listener
138144 var listener = new ConsoleTraceListener ( ) ;
139145 listener . TraceOutputOptions = TraceOptions . DateTime ;
140- traceSource . Listeners . Add ( listener ) ;
141- return builder . TraceWith ( traceSource ) ;
146+ __traceSource . Listeners . Add ( listener ) ;
147+ return builder . TraceWith ( __traceSource ) ;
142148 }
143149
144150 public static ICluster CreateCluster ( )
@@ -150,8 +156,18 @@ public static ICluster CreateCluster()
150156 {
151157 var anyWritableServer = e . NewClusterDescription . Servers . Any (
152158 description => description . Type . IsWritable ( ) ) ;
159+ if ( __traceSource != null )
160+ {
161+ __traceSource . TraceEvent ( TraceEventType . Information , 0 , $ "CreateCluster: DescriptionChanged event handler called.") ;
162+ __traceSource . TraceEvent ( TraceEventType . Information , 0 , $ "CreateCluster: anyWritableServer = { anyWritableServer } .") ;
163+ __traceSource . TraceEvent ( TraceEventType . Information , 0 , $ "CreateCluster: new description: { e . NewClusterDescription . ToString ( ) } .") ;
164+ }
153165 Interlocked . Exchange ( ref hasWritableServer , anyWritableServer ? 1 : 0 ) ;
154166 } ;
167+ if ( __traceSource != null )
168+ {
169+ __traceSource . TraceEvent ( TraceEventType . Information , 0 , "CreateCluster: initializing cluster." ) ;
170+ }
155171 cluster . Initialize ( ) ;
156172
157173 // wait until the cluster has connected to a writable server
@@ -164,6 +180,11 @@ public static ICluster CreateCluster()
164180 throw new Exception ( message ) ;
165181 }
166182
183+ if ( __traceSource != null )
184+ {
185+ __traceSource . TraceEvent ( TraceEventType . Information , 0 , "CreateCluster: writable server found." ) ;
186+ }
187+
167188 return cluster ;
168189 }
169190
0 commit comments