@@ -102,7 +102,11 @@ public void try3TimesOn503() {
102102 final Waiter waiter = new Waiter ();
103103
104104 final int timeBetweenRetriesMillis = 1 ;
105+
106+ // Enable metrics first - this will send startup events with default handlers
105107 backtraceClient .metrics .enable (new BacktraceMetricsSettings (credentials , defaultBaseUrl , 0 , timeBetweenRetriesMillis ));
108+
109+ // Set up mock handlers AFTER enable() so we only track the explicit send() call
106110 final MockRequestHandler mockUniqueRequestHandler = new MockRequestHandler ();
107111 mockUniqueRequestHandler .statusCode = 503 ;
108112 final MockRequestHandler mockSummedRequestHandler = new MockRequestHandler ();
@@ -132,7 +136,6 @@ public void onEvent(EventsResult result) {
132136 });
133137
134138 backtraceClient .metrics .addSummedEvent (summedEventName );
135-
136139 backtraceClient .metrics .send ();
137140
138141 try {
@@ -206,7 +209,6 @@ public void onEvent(EventsResult result) {
206209 public void shouldUploadEventsWhenMaxNumEventsReached () {
207210 final int maximumNumberOfEvents = 3 ;
208211 final Waiter waiter = new Waiter ();
209-
210212 backtraceClient .metrics .enable (new BacktraceMetricsSettings (credentials , defaultBaseUrl , 0 ));
211213 backtraceClient .metrics .setMaximumNumberOfEvents (maximumNumberOfEvents );
212214 final MockRequestHandler mockRequestHandler = new MockRequestHandler ();
@@ -242,7 +244,6 @@ public void onEvent(EventsResult result) {
242244 public void shouldNotUploadEventsBeforeMaxNumEventsReached () {
243245 final int maximumNumberOfEvents = 3 ;
244246 final Waiter waiter = new Waiter ();
245-
246247 backtraceClient .metrics .enable (new BacktraceMetricsSettings (credentials , defaultBaseUrl , 0 ));
247248 backtraceClient .metrics .setMaximumNumberOfEvents (maximumNumberOfEvents );
248249 final MockRequestHandler mockRequestHandler = new MockRequestHandler ();
@@ -259,6 +260,8 @@ public void onEvent(EventsResult result) {
259260 }
260261 });
261262
263+
264+
262265 // Account for unique events startup event
263266 for (int i = 0 ; i < maximumNumberOfEvents - 2 ; i ++) {
264267 backtraceClient .metrics .addUniqueEvent (uniqueAttributeName [0 ]);
@@ -273,7 +276,7 @@ public void onEvent(EventsResult result) {
273276 public void uploadEventsAutomatic () {
274277 final Waiter waiter = new Waiter ();
275278
276- backtraceClient . metrics . enable ( new BacktraceMetricsSettings ( credentials , defaultBaseUrl , 1 ));
279+ // Set up mock handlers BEFORE enabling metrics to capture startup events
277280 MockRequestHandler mockUniqueRequestHandler = new MockRequestHandler ();
278281 backtraceClient .metrics .setUniqueEventsRequestHandler (mockUniqueRequestHandler );
279282 MockRequestHandler mockSummedRequestHandler = new MockRequestHandler ();
@@ -300,6 +303,7 @@ public void onEvent(EventsResult result) {
300303 }
301304 });
302305
306+ backtraceClient .metrics .enable (new BacktraceMetricsSettings (credentials , defaultBaseUrl , 1000 ));
303307 backtraceClient .metrics .addSummedEvent (summedEventName );
304308
305309 try {
@@ -317,9 +321,9 @@ public void onEvent(EventsResult result) {
317321 @ Test
318322 public void doNotUploadEventsAutomaticBeforeTime () {
319323 backtraceClient .metrics .enable (new BacktraceMetricsSettings (credentials , defaultBaseUrl , 100 ));
324+
320325 MockRequestHandler mockRequestHandler = new MockRequestHandler ();
321326 backtraceClient .metrics .setUniqueEventsRequestHandler (mockRequestHandler );
322-
323327 backtraceClient .metrics .setUniqueEventsOnServerResponse (new EventsOnServerResponseEventListener () {
324328 @ Override
325329 public void onEvent (EventsResult result ) {
@@ -445,7 +449,6 @@ public void onEvent(EventsResult result) {
445449
446450 backtraceClient .metrics .enable (new BacktraceMetricsSettings (credentials , defaultBaseUrl , 0 ));
447451
448-
449452 try {
450453 waiter .await (5 , TimeUnit .SECONDS , 2 );
451454 } catch (Exception e ) {
@@ -465,7 +468,6 @@ public void onEvent(EventsResult result) {
465468 @ Test
466469 public void metricsAttributesShouldChangeIfClientAttributeChanges () {
467470 final Waiter waiter = new Waiter ();
468-
469471 backtraceClient .attributes .put ("foo" , "bar" );
470472 backtraceClient .metrics .enable (new BacktraceMetricsSettings (credentials , defaultBaseUrl , 0 ));
471473 MockRequestHandler mockRequestHandler = new MockRequestHandler ();
0 commit comments