Add local metrics for message processing.

This commit is contained in:
Clark
2023-07-11 18:00:01 -04:00
committed by Clark Chen
parent 8fc03a67b9
commit ac4d8679a1
10 changed files with 129 additions and 36 deletions

View File

@@ -136,7 +136,7 @@ class LocalMetricsDatabase private constructor(
put(EVENT_ID, event.eventId)
put(EVENT_NAME, event.eventName)
put(SPLIT_NAME, split.name)
put(DURATION, split.duration)
put(DURATION, event.timeunit.convert(split.duration, TimeUnit.NANOSECONDS))
}
)
}

View File

@@ -1,12 +1,15 @@
package org.thoughtcrime.securesms.database.model
import java.util.concurrent.TimeUnit
data class LocalMetricsEvent(
val createdAt: Long,
val eventId: String,
val eventName: String,
val splits: MutableList<LocalMetricsSplit>
val splits: MutableList<LocalMetricsSplit>,
val timeunit: TimeUnit
) {
override fun toString(): String {
return "[$eventName] total: ${splits.sumOf { it.duration }} | ${splits.map { it.toString() }.joinToString(", ")}"
return "[$eventName] total: ${splits.sumOf { timeunit.convert(it.duration, TimeUnit.NANOSECONDS) }} | ${splits.map { it.toString() }.joinToString(", ")}"
}
}

View File

@@ -1,10 +1,13 @@
package org.thoughtcrime.securesms.database.model
import java.util.concurrent.TimeUnit
data class LocalMetricsSplit(
val name: String,
val duration: Long
val duration: Long,
val timeunit: TimeUnit = TimeUnit.MILLISECONDS
) {
override fun toString(): String {
return "$name: $duration"
return "$name: ${timeunit.convert(duration, TimeUnit.NANOSECONDS)}"
}
}