summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIván Ávalos <avalos@disroot.org>2024-03-29 08:49:01 -0600
committerIván Ávalos <avalos@disroot.org>2024-03-29 08:49:01 -0600
commitf885557835769a68c1528e0e99986d5110c3e636 (patch)
treee87e4592624b59dc143f597540b4894d1c6822ce
parente33bc723687328eec69e7580dd3e5698d4679167 (diff)
downloadtaler-android-dev/ivan-avalos/observability.tar.gz
taler-android-dev/ivan-avalos/observability.tar.bz2
taler-android-dev/ivan-avalos/observability.zip
[wallet] Store logs in non-dev mode and remove event type translationsdev/ivan-avalos/observability
bug 0008509
-rw-r--r--wallet/src/main/java/net/taler/wallet/MainViewModel.kt5
-rw-r--r--wallet/src/main/java/net/taler/wallet/events/ObservabilityDialog.kt5
-rw-r--r--wallet/src/main/java/net/taler/wallet/events/ObservabilityEvent.kt27
-rw-r--r--wallet/src/main/res/values/strings.xml18
4 files changed, 3 insertions, 52 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/MainViewModel.kt b/wallet/src/main/java/net/taler/wallet/MainViewModel.kt
index 4b53d15..0f4b94a 100644
--- a/wallet/src/main/java/net/taler/wallet/MainViewModel.kt
+++ b/wallet/src/main/java/net/taler/wallet/MainViewModel.kt
@@ -121,15 +121,12 @@ class MainViewModel(
balanceManager.loadBalances()
}
- if (payload.type in observabilityNotifications
- && payload.event != null
- && devMode.value == true) {
+ if (payload.type in observabilityNotifications && payload.event != null) {
mObservabilityLog.getAndUpdate { logs ->
logs.takeLast(OBSERVABILITY_LIMIT)
.toMutableList().apply {
add(payload.event)
}
-
}
}
diff --git a/wallet/src/main/java/net/taler/wallet/events/ObservabilityDialog.kt b/wallet/src/main/java/net/taler/wallet/events/ObservabilityDialog.kt
index 91733c3..0ce5c01 100644
--- a/wallet/src/main/java/net/taler/wallet/events/ObservabilityDialog.kt
+++ b/wallet/src/main/java/net/taler/wallet/events/ObservabilityDialog.kt
@@ -44,7 +44,6 @@ import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.ComposeView
-import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.font.FontFamily
import androidx.compose.ui.unit.dp
@@ -124,8 +123,6 @@ fun ObservabilityItem(
event: ObservabilityEvent,
showJson: Boolean,
) {
- val context = LocalContext.current
- val title = event.getTitle(context)
val body = json.encodeToString(event.body)
val timestamp = DateTimeFormatter
.ofLocalizedDateTime(FormatStyle.MEDIUM)
@@ -133,7 +130,7 @@ fun ObservabilityItem(
ListItem(
modifier = Modifier.fillMaxWidth(),
- headlineContent = { Text(title) },
+ headlineContent = { Text(event.type) },
overlineContent = { Text(timestamp) },
supportingContent = if (!showJson) null else { ->
Column(
diff --git a/wallet/src/main/java/net/taler/wallet/events/ObservabilityEvent.kt b/wallet/src/main/java/net/taler/wallet/events/ObservabilityEvent.kt
index a726045..a50cde2 100644
--- a/wallet/src/main/java/net/taler/wallet/events/ObservabilityEvent.kt
+++ b/wallet/src/main/java/net/taler/wallet/events/ObservabilityEvent.kt
@@ -16,7 +16,6 @@
package net.taler.wallet.events
-import android.content.Context
import kotlinx.serialization.KSerializer
import kotlinx.serialization.Serializable
import kotlinx.serialization.descriptors.SerialDescriptor
@@ -27,7 +26,6 @@ import kotlinx.serialization.json.JsonElement
import kotlinx.serialization.json.JsonObject
import kotlinx.serialization.json.jsonObject
import kotlinx.serialization.json.jsonPrimitive
-import net.taler.wallet.R
import java.time.LocalDateTime
@@ -36,30 +34,7 @@ class ObservabilityEvent(
val body: JsonObject,
val timestamp: LocalDateTime,
val type: String,
-) {
-
- fun getTitle(c: Context) = when (type) {
- "http-fetch-start" -> c.getString(R.string.event_http_fetch_start)
- "http-fetch-finish-error" -> c.getString(R.string.event_http_fetch_finish_error)
- "http-fetch-finish-success" -> c.getString(R.string.event_http_fetch_finish_success)
- "db-query-start" -> c.getString(R.string.event_db_query_start)
- "db-query-finish-success" -> c.getString(R.string.event_db_query_finish_success)
- "db-query-finish-error" -> c.getString(R.string.event_db_query_finish_error)
- "request-start" -> c.getString(R.string.event_request_start)
- "request-finish-success" -> c.getString(R.string.event_request_finish_success)
- "request-finish-error" -> c.getString(R.string.event_request_finish_error)
- "task-start" -> c.getString(R.string.event_task_start)
- "task-stop" -> c.getString(R.string.event_task_stop)
- "task-reset" -> c.getString(R.string.event_task_reset)
- "sheperd-task-result" -> c.getString(R.string.event_shepherd_task_result)
- "declare-task-dependency" -> c.getString(R.string.event_declare_task_dependency)
- "crypto-start" -> c.getString(R.string.event_crypto_start)
- "crypto-finish-success" -> c.getString(R.string.event_crypto_finish_success)
- "crypto-finish-error" -> c.getString(R.string.event_crypto_finish_error)
- "unknown" -> c.getString(R.string.event_unknown)
- else -> type
- }
-}
+)
class ObservabilityEventSerializer: KSerializer<ObservabilityEvent> {
private val jsonElementSerializer = JsonElement.serializer()
diff --git a/wallet/src/main/res/values/strings.xml b/wallet/src/main/res/values/strings.xml
index e597b4e..9e3c3a6 100644
--- a/wallet/src/main/res/values/strings.xml
+++ b/wallet/src/main/res/values/strings.xml
@@ -276,24 +276,6 @@ GNU Taler is immune against many types of fraud, such as phishing of credit card
<string name="observability_title">Internal event log</string>
<string name="observability_show_json">Show JSON</string>
<string name="observability_hide_json">Hide JSON</string>
- <string name="event_http_fetch_start">HTTP request started</string>
- <string name="event_http_fetch_finish_success">HTTP request succeeded</string>
- <string name="event_http_fetch_finish_error">HTTP request failed</string>
- <string name="event_db_query_start">Database query started</string>
- <string name="event_db_query_finish_success">Database query succeeded</string>
- <string name="event_db_query_finish_error">Database query failed</string>
- <string name="event_request_start">Request started</string>
- <string name="event_request_finish_success">Request succeeded</string>
- <string name="event_request_finish_error">Request failed</string>
- <string name="event_task_start">Task started</string>
- <string name="event_task_stop">Task stopped</string>
- <string name="event_task_reset">Task reset</string>
- <string name="event_declare_task_dependency">Task dependency declared</string>
- <string name="event_crypto_start">Crypto operation started</string>
- <string name="event_crypto_finish_success">Crypto operation succeeded</string>
- <string name="event_crypto_finish_error">Crypto operation finished</string>
- <string name="event_shepherd_task_result">Shepherd task result</string>
- <string name="event_unknown">Unknown event</string>
<string name="settings_dev_mode">Developer Mode</string>
<string name="settings_dev_mode_summary">Shows more information intended for debugging</string>