Skip to content
  • mattrutherford's avatar
    Runtime interface to add support for tracing from wasm (#6381) · 74a989f3
    mattrutherford authored
    
    
    * Add span recording to tracing implementation
    
    * Add tracing proxy
    
    * switch to rustc_hash::FxHashMap
    
    * Replace lazy_static and hashmap with thread_local and vec.
    
    * fix marking valid span as invalid while removing invalid spans
    
    * refactor, add wasm_tracing module in `support`
    
    * update registered spans
    
    * tidy up
    
    * typos
    
    * refactor
    
    * update flag name to signal lost trace - `is_valid_trace`
    
    * update flag name to signal lost trace - `is_valid_trace`
    
    * update docs
    
    * update docs
    
    * Use tracing Field recording to store the actual `name` and `target`
    from wasm traces.
    
    * fix debug log in subscriber + small refactor
    
    * add tests
    
    * handle misuse in case trying to exit span not held
    
    * Implement filter for wasm traces, simplify field recording for primitive types
    
    * remove superfluous warning
    
    * update docs
    
    * Update primitives/tracing/src/proxy.rs
    
    Co-authored-by: default avatarKian Paimani <[email protected]>
    
    * Apply suggestions from code review
    
    Co-authored-by: default avatarBastian Köcher <[email protected]>
    
    * update docs, apply suggestions
    
    * move Proxy from thread_local to `Extension`, rename macro
    
    * fix test
    
    * unify native & wasm span macro calls
    
    * implement wasm tracing control facility in primitives and frame
    
    * add cli flag `--wasm-tracing`
    
    * fix
    
    * switch to `Option<u4>` (possible performance degradation), switch
    to static mut bool
    
    * performance improvement using u64 vs Option<u64>
    
    * performance improvement moving concat to client
    
    * update docs
    
    * Update client/cli/src/params/import_params.rs
    
    Co-authored-by: default avatarCecile Tonglet <[email protected]>
    
    * performance improvement
    
    * Revert "performance improvement"
    
    This reverts commit 55ff8817a86302cd93bb6197eb4ca5bc7f4fb524.
    
    * small refactor
    
    * formatting
    
    * bump impl_version
    
    * Update client/cli/src/config.rs
    
    Co-authored-by: default avatarBastian Köcher <[email protected]>
    
    * update docs
    
    * small fixes, remove pub static
    
    * nit
    
    * add integration tests and refactor Subscriber
    
    * tests
    
    * revert formatting
    
    * try fix test that works locally but not in CI
    
    * try fix test that works locally but not in CI
    
    * debug test that works locally but not in CI
    
    * fix test that works locally but not in CI
    
    * remove pub visibility from bool in runtime
    
    * make TracingSpanGuard #[cfg(not(feature = "std"))], update docs, comments
    
    * make TracingProxy drop implementation conditional on !empty state
    
    * add docs for TraceHandler
    
    * remove blank line
    
    * update expect message
    
    * update tests
    
    * rename cli option to tracing_enable_wasm
    
    * rename cli option to tracing_enable_wasm
    
    * fix
    
    * ensure wasm-tracing features are wasm only
    
    * bump impl_version
    
    * bump impl_version
    
    * add `"pallet-scheduler/std"` to `[features]` `std` in node/runtime
    
    * refactor service to remove sp_tracing dependency
    
    * refactor: line width, trait bounds
    
    * improve LogTraceHandler output
    
    * fix test
    
    * improve tracing log output
    
    * Apply suggestions from code review
    
    * Apply suggestions from code review
    
    Co-authored-by: default avatarBastian Köcher <[email protected]>
    
    * swap wasm indication from trace name to a separate value
    
    * Update client/tracing/src/lib.rs
    
    * add docs
    
    * remove runtime features
    
    remove wasm_tracing option from CLI
    
    remove wasm_tracing flag from ProfilingSubscriber
    
    Co-authored-by: default avatarMatt Rutherford <[email protected]>
    Co-authored-by: default avatarKian Paimani <[email protected]>
    Co-authored-by: default avatarBastian Köcher <[email protected]>
    Co-authored-by: default avatarCecile Tonglet <[email protected]>
    74a989f3