From e07b50d371725cf927f7115545ec23c32390aa64 Mon Sep 17 00:00:00 2001 From: Andrew Westberg Date: Mon, 19 Aug 2024 19:17:05 +0000 Subject: [PATCH] STUD-314: Add logging for oracle errors --- .../features/cardano/repo/CardanoRepositoryImpl.kt | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/newm-server/src/main/kotlin/io/newm/server/features/cardano/repo/CardanoRepositoryImpl.kt b/newm-server/src/main/kotlin/io/newm/server/features/cardano/repo/CardanoRepositoryImpl.kt index 7658a99a..33b87e61 100644 --- a/newm-server/src/main/kotlin/io/newm/server/features/cardano/repo/CardanoRepositoryImpl.kt +++ b/newm-server/src/main/kotlin/io/newm/server/features/cardano/repo/CardanoRepositoryImpl.kt @@ -358,16 +358,20 @@ internal class CardanoRepositoryImpl( ?.int return usdPrice ?: run { if (isMainnet()) { - throw IllegalStateException("Oracle Utxo does not contain a USD price!") + throw IllegalStateException( + "Oracle Utxo does not contain a USD price! - ${(cachedOracleUtxo ?: failoverOracleUtxo)}" + ) } else { // On testnet, we don't have an oracle utxo, so we just return a default price - logger.warn { "Oracle Utxo does not contain a USD price! Using default value: $default" } + logger.warn { + "Oracle Utxo does not contain a USD price! Using default value: $default - ${cachedOracleUtxo ?: failoverOracleUtxo}" + } default } } } catch (e: Throwable) { throw IllegalStateException( - "Error parsing oracle feed!: ${ + "Error parsing oracle feed! for $cacheKey - $policy.$name: ${ (cachedOracleUtxo ?: failoverOracleUtxo)?.datumOrNull?.toCborObject()?.toCborByteArray() ?.toHexString() }",