Bladeren bron

gas spending metrics

0xfirefist 1 jaar geleden
bovenliggende
commit
2b38917d9f
2 gewijzigde bestanden met toevoegingen van 28 en 13 verwijderingen
  1. 22 8
      apps/fortuna/src/keeper.rs
  2. 6 5
      apps/fortuna/src/metrics.rs

+ 22 - 8
apps/fortuna/src/keeper.rs

@@ -221,14 +221,28 @@ pub async fn process_event(
                 };
 
                 match pending_tx.await {
-                    Ok(res) => {
-                        tracing::info!(
-                            sequence_number = &event.sequence_number,
-                            "Revealed with res: {:?}",
-                            res
-                        );
-                        Ok(())
-                    }
+                    Ok(res) => match res {
+                        Some(res) => {
+                            tracing::info!(
+                                sequence_number = &event.sequence_number,
+                                transaction_hash = &res.transaction_hash.to_string(),
+                                gas_used = ?res.gas_used,
+                                "Revealed with res: {:?}",
+                                res
+                            );
+                            Ok(())
+                        }
+                        None => {
+                            tracing::error!(
+                                sequence_number = &event.sequence_number,
+                                "Can't verify the reveal"
+                            );
+                            // It is better to return an error in this scenario
+                            // For the caller to retry
+                            Err(anyhow!("Can't verify the reveal"))
+                        }
+                    },
+
                     Err(e) => {
                         tracing::error!(
                             sequence_number = &event.sequence_number,

+ 6 - 5
apps/fortuna/src/metrics.rs

@@ -5,13 +5,10 @@ use {
         metrics::{
             counter::Counter,
             family::Family,
-            gauge::{
-                Gauge,
-            },
+            gauge::Gauge,
         },
         registry::Registry,
     },
-    std::sync::atomic::AtomicU64,
     tokio::sync::RwLock,
 };
 
@@ -44,9 +41,13 @@ pub struct Metrics {
     //
     // pub rpc: Family<Label, Counter>,
     //
-    // pub gas_spending: Family<Label, Gauge>,
     // pub requests:     Family<Label, Counter>,
     // pub reveal:       Family<Label, Counter>,
+
+    // NOTE: gas_spending is not part of metrics.
+    // why?
+    // - it is not a value that increases or decreases over time. Not a counter or a gauge
+    // - it can't fit in a histogram too. logging and then collecting it is better.
 }
 
 impl Metrics {