@@ -14,7 +14,7 @@ use signet_constants::SignetSystemConstants;
1414use signet_sim:: { HostEnv , RollupEnv } ;
1515use tokio:: { sync:: watch, task:: JoinHandle } ;
1616use tokio_stream:: StreamExt ;
17- use tracing:: { Instrument , Span , info_span} ;
17+ use tracing:: { Instrument , Span , debug_span , info_span} ;
1818use trevm:: revm:: {
1919 context:: BlockEnv ,
2020 context_interface:: block:: BlobExcessGasAndPrice ,
@@ -273,19 +273,38 @@ impl EnvTask {
273273
274274 drop ( span) ;
275275
276- while let Some ( rollup_header) =
277- rollup_headers. next ( ) . instrument ( info_span ! ( "EnvTask::task_fut::stream" ) ) . await
276+ // This span will be updated at the end of each loop iteration.
277+ let mut span = info_span ! (
278+ "SimEnv" ,
279+ host_block. number = "initial" ,
280+ rollup_header. number = "initial" ,
281+ rollup_header. hash = "initial" ,
282+ ) ;
283+
284+ while let Some ( rollup_header) = rollup_headers
285+ . next ( )
286+ . instrument ( info_span ! ( parent: & span, "waiting_for_notification" ) )
287+ . await
278288 {
279289 let host_block_number =
280290 self . config . constants . rollup_block_to_host_block_num ( rollup_header. number ) ;
291+ let rollup_block_number = rollup_header. number ;
281292
282- let span = info_span ! ( "SimEnv" , %host_block_number, %rollup_header. hash, %rollup_header. number) ;
293+ // Populate span fields.
294+ span. record ( "host_block.number" , host_block_number) ;
295+ span. record ( "rollup_header.number" , rollup_block_number) ;
296+ span. record ( "rollup_header.hash" , rollup_header. hash . to_string ( ) ) ;
283297
284298 let ( host_block_res, quincey_res) = tokio:: join!(
285- self . host_provider. get_block_by_number( host_block_number. into( ) ) ,
299+ self . host_provider
300+ . get_block_by_number( host_block_number. into( ) )
301+ . into_future( )
302+ . instrument(
303+ debug_span!( parent: & span, "EnvTask::fetch_host_block" , %host_block_number)
304+ ) ,
286305 // We want to check that we're able to sign for the block we're gonna start building.
287306 // If not, we just want to skip all the work.
288- self . quincey. preflight_check( host_block_number + 1 )
307+ self . quincey. preflight_check( host_block_number + 1 ) ,
289308 ) ;
290309
291310 res_unwrap_or_continue ! (
@@ -326,14 +345,22 @@ impl EnvTask {
326345 span,
327346 rollup_env_number = rollup_env. block_env. number. to:: <u64 >( ) ,
328347 rollup_env_basefee = rollup_env. block_env. basefee,
329- "constructed block env, initiating build process"
348+ "constructed block env, dispatching to build process"
330349 ) ;
331350
332351 if sender. send ( Some ( SimEnv { span, rollup : rollup_env, host : host_env } ) ) . is_err ( ) {
333352 // The receiver has been dropped, so we can stop the task.
334- span_debug ! ( "receiver dropped, stopping task" ) ;
353+ tracing :: debug !( "receiver dropped, stopping task" ) ;
335354 break ;
336355 }
356+
357+ // Create a new span for the next iteration.
358+ span = info_span ! (
359+ "SimEnv" ,
360+ host_block. number = host_block_number + 1 ,
361+ rollup_header. number = rollup_block_number + 1 ,
362+ rollup_header. hash = tracing:: field:: Empty ,
363+ ) ;
337364 }
338365 }
339366
0 commit comments