pub trait TraceSqlLogic {
// Provided methods
fn insert_trace_baggage_batch<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
baggage: &'life1 [TraceBaggageRecord],
) -> Pin<Box<dyn Future<Output = Result<PgQueryResult, SqlError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait { ... }
fn get_trace_baggage_records<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
trace_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceBaggageRecord>, SqlError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait { ... }
fn get_spans_from_tags<'life0, 'life1, 'life2, 'async_trait>(
pool: &'life0 Pool<Postgres>,
entity_type: &'life1 str,
tag_filters: Vec<HashMap<String, String>>,
match_all: bool,
service_name: Option<&'life2 str>,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceSpan>, SqlError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait { ... }
fn get_trace_ids_for_entity<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
entity_uid: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<u8>>, SqlError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait { ... }
}Provided Methods§
Sourcefn insert_trace_baggage_batch<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
baggage: &'life1 [TraceBaggageRecord],
) -> Pin<Box<dyn Future<Output = Result<PgQueryResult, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
fn insert_trace_baggage_batch<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
baggage: &'life1 [TraceBaggageRecord],
) -> Pin<Box<dyn Future<Output = Result<PgQueryResult, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Attempts to insert multiple trace baggage records into the database in a batch.
§Arguments
pool- The database connection poolbaggage- The trace baggage records to insert
Sourcefn get_trace_baggage_records<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
trace_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceBaggageRecord>, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
fn get_trace_baggage_records<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
trace_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceBaggageRecord>, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Attempts to retrieve trace spans based on tag filters.
§Arguments
pool- The database connection poolentity_type- The entity type to filter spanstag_filters- The tag filters to applymatch_all- Whether to match all tags or anyservice_name- Optional service name to filter spans
§Returns
- A vector of
TraceSpanmatching the tag filters
Sourcefn get_trace_ids_for_entity<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
entity_uid: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<u8>>, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
fn get_trace_ids_for_entity<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
entity_uid: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<u8>>, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Resolve entity_uid (UUID string) to raw 16-byte trace IDs via scouter.trace_entities.
Returns empty Vec when entity_uid is invalid or no rows match.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.