From c12033f436994f33327e5cd409937806c46cda28 Mon Sep 17 00:00:00 2001 From: Matthias Seitz Date: Tue, 26 Jul 2022 17:25:43 +0200 Subject: [PATCH] fix: only run tracing example if env var is set (#1517) --- examples/geth_trace_transaction.rs | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/examples/geth_trace_transaction.rs b/examples/geth_trace_transaction.rs index e76266e3..dac3c62f 100644 --- a/examples/geth_trace_transaction.rs +++ b/examples/geth_trace_transaction.rs @@ -1,16 +1,19 @@ use ethers::prelude::*; use eyre::Result; -use std::{env, str::FromStr}; +use std::str::FromStr; +/// use `debug_traceTransaction` to fetch traces +/// requires, a valid endpoint in `RPC_URL` env var that supports `debug_traceTransaction` #[tokio::main] async fn main() -> Result<()> { - let rpc_url: String = env::var("RPC_URL")?; - let client = Provider::::try_from(rpc_url)?; - let tx_hash = "0x97a02abf405d36939e5b232a5d4ef5206980c5a6661845436058f30600c52df7"; - let h: H256 = H256::from_str(tx_hash)?; - let options: GethDebugTracingOptions = GethDebugTracingOptions::default(); - let traces = client.debug_trace_transaction(h, options).await?; - println!("{:?}", traces); + if let Ok(url) = std::env::var("RPC_URL") { + let client = Provider::::try_from(url)?; + let tx_hash = "0x97a02abf405d36939e5b232a5d4ef5206980c5a6661845436058f30600c52df7"; + let h: H256 = H256::from_str(tx_hash)?; + let options: GethDebugTracingOptions = GethDebugTracingOptions::default(); + let traces = client.debug_trace_transaction(h, options).await?; + println!("{:?}", traces); + } Ok(()) }