Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate thermal states to OTel #821

Merged
merged 11 commits into from
May 13, 2024
Prev Previous commit
Next Next commit
Cosmetic change
  • Loading branch information
leandro-godon committed May 8, 2024
commit 29be5e247785c14d3438c35e914256371ed2bee2
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@
backgroundWorker.submit(TaskPriority.LOW) {
Systrace.traceSynchronous("thermal-service-registration") {
thermalStatusListener = PowerManager.OnThermalStatusChangedListener {
handleThermalStateChange(it)

Check warning on line 49 in embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt

View check run for this annotation

Codecov / codecov/patch

embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt#L49

Added line #L49 was not covered by tests
}
val pm = powerManager
if (pm != null) {
Expand All @@ -54,7 +54,7 @@
// to everything in the codebase so we decorate the BackgroundWorker here as an
// alternative
val executor = Executor {
backgroundWorker.submit(runnable = it)

Check warning on line 57 in embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt

View check run for this annotation

Codecov / codecov/patch

embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt#L57

Added line #L57 was not covered by tests
}
thermalStatusListener?.let {
pm.addThermalStatusListener(executor, it)
Expand All @@ -65,11 +65,11 @@
}

override fun disableDataCapture() {
backgroundWorker.submit(TaskPriority.LOW) {

Check warning on line 68 in embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt

View check run for this annotation

Codecov / codecov/patch

embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt#L68

Added line #L68 was not covered by tests
thermalStatusListener?.let {
powerManager?.removeThermalStatusListener(it)
thermalStatusListener = null

Check warning on line 71 in embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt

View check run for this annotation

Codecov / codecov/patch

embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt#L71

Added line #L71 was not covered by tests
}
thermalStatusListener = null
}
}

Expand All @@ -78,39 +78,39 @@
return
}

val timestamp = clock.now()

Check warning on line 81 in embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt

View check run for this annotation

Codecov / codecov/patch

embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt#L81

Added line #L81 was not covered by tests

// close previous span
if (span != null) {
captureSpanData(
countsTowardsLimits = false,
inputValidation = NoInputValidation,
captureAction = {

Check warning on line 88 in embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt

View check run for this annotation

Codecov / codecov/patch

embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt#L85-L88

Added lines #L85 - L88 were not covered by tests
span?.stop(endTimeMs = timestamp)
}
)
}
// start a new span with the new thermal state
captureSpanData(
countsTowardsLimits = true,
inputValidation = NoInputValidation
) {
startSpanCapture(ThermalState(status, timestamp), ::toStartSpanData)
.apply {
span = this

Check warning on line 100 in embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt

View check run for this annotation

Codecov / codecov/patch

embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt#L94-L100

Added lines #L94 - L100 were not covered by tests
}
}
}

override fun toStartSpanData(obj: ThermalState): StartSpanData {
return StartSpanData(
schemaType = SchemaType.ThermalState(obj.status),
spanStartTimeMs = obj.timestamp

Check warning on line 108 in embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt

View check run for this annotation

Codecov / codecov/patch

embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt#L106-L108

Added lines #L106 - L108 were not covered by tests
)
}
}

internal data class ThermalState(
val status: Int,
val timestamp: Long

Check warning on line 115 in embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt

View check run for this annotation

Codecov / codecov/patch

embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/capture/thermalstate/ThermalStateDataSource.kt#L113-L115

Added lines #L113 - L115 were not covered by tests
)
Loading