ibapi/trace/mod.rs
1//! Server interaction tracing for debugging and monitoring
2//!
3//! This module provides functionality to capture and retrieve server interactions
4//! globally across the application. It supports both sync and async modes.
5
6// Common types and storage
7mod common;
8
9// Feature-specific implementations
10#[cfg(feature = "sync")]
11mod sync;
12
13#[cfg(feature = "async")]
14mod r#async;
15
16// Public types - always available regardless of feature flags
17pub use common::Interaction;
18
19// Re-export API functions based on active feature
20#[cfg(feature = "sync")]
21/// Blocking tracing helpers that wrap the synchronous client.
22pub mod blocking {
23 pub use super::sync::{last_interaction, record_request, record_response};
24}
25
26#[cfg(all(feature = "sync", not(feature = "async")))]
27pub use sync::{last_interaction, record_request, record_response};
28
29#[cfg(feature = "async")]
30pub use r#async::{last_interaction, record_request, record_response};