Skip to content

Commit 8578698

Browse files
committed
Revert unrelated changes. Moved them to td/gauge-counter-metadata
1 parent 8cf5118 commit 8578698

File tree

5 files changed

+34
-34
lines changed

5 files changed

+34
-34
lines changed

firebase-perf/src/main/java/com/google/firebase/perf/session/FirebasePerformanceSessionSubscriber.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717
package com.google.firebase.perf.session
1818

1919
import com.google.firebase.perf.logging.FirebaseSessionsEnforcementCheck
20+
import com.google.firebase.perf.session.gauges.GaugeManager
21+
import com.google.firebase.perf.v1.ApplicationProcessState
2022
import com.google.firebase.sessions.api.SessionSubscriber
2123

2224
class FirebasePerformanceSessionSubscriber(override val isDataCollectionEnabled: Boolean) :
@@ -31,5 +33,7 @@ class FirebasePerformanceSessionSubscriber(override val isDataCollectionEnabled:
3133

3234
val updatedSession = PerfSession.createWithId(sessionDetails.sessionId)
3335
SessionManager.getInstance().updatePerfSession(updatedSession)
36+
GaugeManager.getInstance()
37+
.logGaugeMetadata(updatedSession.sessionId(), ApplicationProcessState.FOREGROUND)
3438
}
3539
}

firebase-perf/src/main/java/com/google/firebase/perf/session/SessionManager.java

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -115,9 +115,6 @@ public void updatePerfSession(PerfSession perfSession) {
115115
}
116116
}
117117

118-
// Log gauge metadata.
119-
logGaugeMetadataIfCollectionEnabled();
120-
121118
// Start of stop the gauge data collection.
122119
startOrStopCollectingGauges();
123120
}
@@ -156,12 +153,6 @@ public void unregisterForSessionUpdates(WeakReference<SessionAwareObject> client
156153
}
157154
}
158155

159-
private void logGaugeMetadataIfCollectionEnabled() {
160-
if (perfSession.isVerbose()) {
161-
gaugeManager.logGaugeMetadata(perfSession.sessionId());
162-
}
163-
}
164-
165156
private void startOrStopCollectingGauges() {
166157
FirebaseSessionsEnforcementCheck.checkSession(perfSession, "startOrStopCollectingGauges");
167158

firebase-perf/src/main/java/com/google/firebase/perf/session/gauges/GaugeCounter.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ import java.util.concurrent.atomic.AtomicInteger
2323
* [MAX_METRIC_COUNT], it attempts to log the metrics to Firelog.
2424
*/
2525
object GaugeCounter {
26-
private const val MAX_METRIC_COUNT = 50
26+
private const val MAX_METRIC_COUNT = 25
2727
private val counter = AtomicInteger(0)
2828
private val logger = AndroidLogger.getInstance()
2929

firebase-perf/src/main/java/com/google/firebase/perf/session/gauges/GaugeManager.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -274,17 +274,18 @@ private void syncFlush(String sessionId, ApplicationProcessState appState) {
274274
* Log the Gauge Metadata information to the transport.
275275
*
276276
* @param sessionId The {@link PerfSession#sessionId()} ()} to which the collected Gauge Metrics
277-
* should be associated with.
277+
* should be associated with.
278+
* @param appState The {@link ApplicationProcessState} for which these gauges are collected.
278279
* @return true if GaugeMetadata was logged, false otherwise.
279280
*/
280-
public boolean logGaugeMetadata(String sessionId) {
281+
public boolean logGaugeMetadata(String sessionId, ApplicationProcessState appState) {
281282
if (gaugeMetadataManager != null) {
282283
GaugeMetric gaugeMetric =
283284
GaugeMetric.newBuilder()
284285
.setSessionId(sessionId)
285286
.setGaugeMetadata(getGaugeMetadata())
286287
.build();
287-
transportManager.log(gaugeMetric, ApplicationProcessState.FOREGROUND);
288+
transportManager.log(gaugeMetric, appState);
288289
return true;
289290
}
290291
return false;

firebase-perf/src/test/java/com/google/firebase/perf/session/gauges/GaugeManagerTest.java

Lines changed: 25 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,6 @@ public final class GaugeManagerTest extends FirebasePerformanceTestBase {
6666
private static final long DEFAULT_MEMORY_GAUGE_COLLECTION_FREQUENCY_BG_MS = 120;
6767
private static final long DEFAULT_MEMORY_GAUGE_COLLECTION_FREQUENCY_FG_MS = 60;
6868

69-
// See [com.google.firebase.perf.session.gauges.GaugeCounter].
70-
private static long MAX_GAUGE_COUNTER_BEFORE_LOGGING = 50;
71-
7269
private GaugeManager testGaugeManager = null;
7370
private FakeScheduledExecutorService fakeScheduledExecutorService = null;
7471
private TransportManager mockTransportManager = null;
@@ -343,7 +340,8 @@ public void testGaugeCounterStartsAJobToConsumeTheGeneratedMetrics() {
343340
// There's no job to log the gauges.
344341
assertThat(fakeScheduledExecutorService.isEmpty()).isTrue();
345342

346-
generateMetricsAndIncrementCounter(MAX_GAUGE_COUNTER_BEFORE_LOGGING - 10);
343+
// Generate metrics that don't exceed the GaugeCounter.MAX_COUNT.
344+
generateMetricsAndIncrementCounter(20);
347345

348346
// There's still no job to log the gauges.
349347
assertThat(fakeScheduledExecutorService.isEmpty()).isTrue();
@@ -368,7 +366,7 @@ public void testGaugeCounterStartsAJobToConsumeTheGeneratedMetrics() {
368366
int recordedGaugeMetricsCount =
369367
recordedGaugeMetric.getAndroidMemoryReadingsCount()
370368
+ recordedGaugeMetric.getCpuMetricReadingsCount();
371-
assertThat(recordedGaugeMetricsCount).isEqualTo(MAX_GAUGE_COUNTER_BEFORE_LOGGING);
369+
assertThat(recordedGaugeMetricsCount).isEqualTo(30);
372370

373371
assertThat(recordedGaugeMetric.getSessionId()).isEqualTo(testSessionId(1));
374372
}
@@ -385,7 +383,8 @@ public void testGaugeCounterIsDecrementedWhenLogged() {
385383
// There's no job to log the gauges.
386384
assertThat(fakeScheduledExecutorService.isEmpty()).isTrue();
387385

388-
generateMetricsAndIncrementCounter(MAX_GAUGE_COUNTER_BEFORE_LOGGING - 10);
386+
// Generate metrics that don't exceed the GaugeCounter.MAX_COUNT.
387+
generateMetricsAndIncrementCounter(20);
389388

390389
// There's still no job to log the gauges.
391390
assertThat(fakeScheduledExecutorService.isEmpty()).isTrue();
@@ -396,8 +395,7 @@ public void testGaugeCounterIsDecrementedWhenLogged() {
396395
assertThat(fakeScheduledExecutorService.getDelayToNextTask(TimeUnit.MILLISECONDS))
397396
.isEqualTo(TIME_TO_WAIT_BEFORE_FLUSHING_GAUGES_QUEUE_MS);
398397

399-
assertThat(GaugeCounter.count())
400-
.isEqualTo(priorGaugeCounter + MAX_GAUGE_COUNTER_BEFORE_LOGGING);
398+
assertThat(GaugeCounter.count()).isEqualTo(priorGaugeCounter + 30);
401399
fakeScheduledExecutorService.simulateSleepExecutingAtMostOneTask();
402400

403401
assertThat(GaugeCounter.count()).isEqualTo(priorGaugeCounter);
@@ -412,7 +410,7 @@ public void testUpdateAppStateHandlesMultipleAppStates() {
412410
GaugeCounter.setGaugeManager(testGaugeManager);
413411

414412
// Generate metrics that don't exceed the GaugeCounter.MAX_COUNT.
415-
generateMetricsAndIncrementCounter(MAX_GAUGE_COUNTER_BEFORE_LOGGING - 10);
413+
generateMetricsAndIncrementCounter(10);
416414

417415
// There's no job to log the gauges.
418416
assertThat(fakeScheduledExecutorService.isEmpty()).isTrue();
@@ -427,7 +425,7 @@ public void testUpdateAppStateHandlesMultipleAppStates() {
427425
shadowOf(Looper.getMainLooper()).idle();
428426

429427
// Generate additional metrics in the new app state.
430-
generateMetricsAndIncrementCounter(MAX_GAUGE_COUNTER_BEFORE_LOGGING + 1);
428+
generateMetricsAndIncrementCounter(26);
431429

432430
GaugeMetric recordedGaugeMetric =
433431
getLastRecordedGaugeMetric(ApplicationProcessState.FOREGROUND);
@@ -436,7 +434,7 @@ public void testUpdateAppStateHandlesMultipleAppStates() {
436434
int recordedGaugeMetricsCount =
437435
recordedGaugeMetric.getAndroidMemoryReadingsCount()
438436
+ recordedGaugeMetric.getCpuMetricReadingsCount();
439-
assertThat(recordedGaugeMetricsCount).isEqualTo(MAX_GAUGE_COUNTER_BEFORE_LOGGING - 10);
437+
assertThat(recordedGaugeMetricsCount).isEqualTo(10);
440438

441439
assertThat(recordedGaugeMetric.getSessionId()).isEqualTo(testSessionId(1));
442440

@@ -450,7 +448,7 @@ public void testUpdateAppStateHandlesMultipleAppStates() {
450448
recordedGaugeMetricsCount =
451449
recordedGaugeMetric.getAndroidMemoryReadingsCount()
452450
+ recordedGaugeMetric.getCpuMetricReadingsCount();
453-
assertThat(recordedGaugeMetricsCount).isEqualTo(MAX_GAUGE_COUNTER_BEFORE_LOGGING + 1);
451+
assertThat(recordedGaugeMetricsCount).isEqualTo(26);
454452

455453
assertThat(recordedGaugeMetric.getSessionId()).isEqualTo(testSessionId(1));
456454
}
@@ -464,7 +462,7 @@ public void testGaugeManagerHandlesMultipleSessionIds() {
464462
GaugeCounter.setGaugeManager(testGaugeManager);
465463

466464
// Generate metrics that don't exceed the GaugeCounter.MAX_COUNT.
467-
generateMetricsAndIncrementCounter(MAX_GAUGE_COUNTER_BEFORE_LOGGING - 10);
465+
generateMetricsAndIncrementCounter(10);
468466

469467
PerfSession updatedPerfSession = createTestSession(2);
470468
updatedPerfSession.setGaugeAndEventCollectionEnabled(true);
@@ -481,7 +479,7 @@ public void testGaugeManagerHandlesMultipleSessionIds() {
481479
shadowOf(Looper.getMainLooper()).idle();
482480

483481
// Generate metrics for the new session.
484-
generateMetricsAndIncrementCounter(MAX_GAUGE_COUNTER_BEFORE_LOGGING + 1);
482+
generateMetricsAndIncrementCounter(26);
485483

486484
GaugeMetric recordedGaugeMetric =
487485
getLastRecordedGaugeMetric(ApplicationProcessState.BACKGROUND);
@@ -490,7 +488,7 @@ public void testGaugeManagerHandlesMultipleSessionIds() {
490488
int recordedGaugeMetricsCount =
491489
recordedGaugeMetric.getAndroidMemoryReadingsCount()
492490
+ recordedGaugeMetric.getCpuMetricReadingsCount();
493-
assertThat(recordedGaugeMetricsCount).isEqualTo(MAX_GAUGE_COUNTER_BEFORE_LOGGING - 10);
491+
assertThat(recordedGaugeMetricsCount).isEqualTo(10);
494492

495493
assertThat(recordedGaugeMetric.getSessionId()).isEqualTo(testSessionId(1));
496494

@@ -504,7 +502,7 @@ public void testGaugeManagerHandlesMultipleSessionIds() {
504502
recordedGaugeMetricsCount =
505503
recordedGaugeMetric.getAndroidMemoryReadingsCount()
506504
+ recordedGaugeMetric.getCpuMetricReadingsCount();
507-
assertThat(recordedGaugeMetricsCount).isEqualTo(MAX_GAUGE_COUNTER_BEFORE_LOGGING + 1);
505+
assertThat(recordedGaugeMetricsCount).isEqualTo(26);
508506

509507
assertThat(recordedGaugeMetric.getSessionId()).isEqualTo(testSessionId(2));
510508
}
@@ -561,7 +559,7 @@ public void testLogGaugeMetadataSendDataToTransport() {
561559
when(fakeGaugeMetadataManager.getMaxAppJavaHeapMemoryKb()).thenReturn(1000);
562560
when(fakeGaugeMetadataManager.getMaxEncouragedAppJavaHeapMemoryKb()).thenReturn(800);
563561

564-
testGaugeManager.logGaugeMetadata(testSessionId(1));
562+
testGaugeManager.logGaugeMetadata(testSessionId(1), ApplicationProcessState.FOREGROUND);
565563

566564
GaugeMetric recordedGaugeMetric =
567565
getLastRecordedGaugeMetric(ApplicationProcessState.FOREGROUND);
@@ -588,7 +586,9 @@ public void testLogGaugeMetadataDoesNotLogWhenGaugeMetadataManagerNotAvailable()
588586
new Lazy<>(() -> fakeCpuGaugeCollector),
589587
new Lazy<>(() -> fakeMemoryGaugeCollector));
590588

591-
assertThat(testGaugeManager.logGaugeMetadata(testSessionId(1))).isFalse();
589+
assertThat(
590+
testGaugeManager.logGaugeMetadata(testSessionId(1), ApplicationProcessState.FOREGROUND))
591+
.isFalse();
592592
}
593593

594594
@Test
@@ -603,10 +603,14 @@ public void testLogGaugeMetadataLogsAfterApplicationContextIsSet() {
603603
new Lazy<>(() -> fakeCpuGaugeCollector),
604604
new Lazy<>(() -> fakeMemoryGaugeCollector));
605605

606-
assertThat(testGaugeManager.logGaugeMetadata(testSessionId(1))).isFalse();
606+
assertThat(
607+
testGaugeManager.logGaugeMetadata(testSessionId(1), ApplicationProcessState.FOREGROUND))
608+
.isFalse();
607609

608610
testGaugeManager.initializeGaugeMetadataManager(ApplicationProvider.getApplicationContext());
609-
assertThat(testGaugeManager.logGaugeMetadata(testSessionId(1))).isTrue();
611+
assertThat(
612+
testGaugeManager.logGaugeMetadata(testSessionId(1), ApplicationProcessState.FOREGROUND))
613+
.isTrue();
610614

611615
GaugeMetric recordedGaugeMetric =
612616
getLastRecordedGaugeMetric(ApplicationProcessState.FOREGROUND);
@@ -634,7 +638,7 @@ private long getMinimumBackgroundCollectionFrequency() {
634638
}
635639

636640
// Simulates the behavior of Cpu and Memory Gauge collector.
637-
private void generateMetricsAndIncrementCounter(long count) {
641+
private void generateMetricsAndIncrementCounter(int count) {
638642
// TODO(b/394127311): Explore actually collecting metrics using the fake Cpu and Memory
639643
// metric collectors.
640644
Random random = new Random();

0 commit comments

Comments
 (0)