pub trait TraceSqlLogic {
// Provided methods
fn upsert_trace_batch<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
traces: &'life1 [TraceRecord],
) -> Pin<Box<dyn Future<Output = Result<PgQueryResult, SqlError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait { ... }
fn insert_span_batch<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
spans: &'life1 [TraceSpanRecord],
) -> 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 { ... }
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_traces_paginated<'life0, 'async_trait>(
pool: &'life0 Pool<Postgres>,
filters: TraceFilters,
) -> Pin<Box<dyn Future<Output = Result<TracePaginationResponse, SqlError>> + Send + 'async_trait>>
where 'life0: 'async_trait { ... }
fn get_trace_spans<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
trace_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceSpan>, SqlError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait { ... }
fn get_trace_metrics<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
pool: &'life0 Pool<Postgres>,
space: Option<&'life1 str>,
name: Option<&'life2 str>,
version: Option<&'life3 str>,
start_time: DateTime<Utc>,
end_time: DateTime<Utc>,
bucket_interval_str: &'life4 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceMetricBucket>, SqlError>> + Send + 'async_trait>>
where 'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait { ... }
fn refresh_trace_summary<'life0, 'async_trait>(
pool: &'life0 Pool<Postgres>,
) -> Pin<Box<dyn Future<Output = Result<PgQueryResult, SqlError>> + Send + 'async_trait>>
where 'life0: 'async_trait { ... }
}Provided Methods§
Sourcefn upsert_trace_batch<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
traces: &'life1 [TraceRecord],
) -> Pin<Box<dyn Future<Output = Result<PgQueryResult, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
fn upsert_trace_batch<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
traces: &'life1 [TraceRecord],
) -> Pin<Box<dyn Future<Output = Result<PgQueryResult, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Attempts to upsert multiple trace records into the database in a batch.
§Arguments
pool- The database connection pooltraces- The trace records to insert
Sourcefn insert_span_batch<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
spans: &'life1 [TraceSpanRecord],
) -> Pin<Box<dyn Future<Output = Result<PgQueryResult, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
fn insert_span_batch<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
spans: &'life1 [TraceSpanRecord],
) -> Pin<Box<dyn Future<Output = Result<PgQueryResult, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Attempts to insert multiple trace span records into the database in a batch.
§Arguments
pool- The database connection poolspans- The trace span records to insert
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
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,
Sourcefn get_traces_paginated<'life0, 'async_trait>(
pool: &'life0 Pool<Postgres>,
filters: TraceFilters,
) -> Pin<Box<dyn Future<Output = Result<TracePaginationResponse, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
fn get_traces_paginated<'life0, 'async_trait>(
pool: &'life0 Pool<Postgres>,
filters: TraceFilters,
) -> Pin<Box<dyn Future<Output = Result<TracePaginationResponse, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Sourcefn get_trace_spans<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
trace_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceSpan>, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
fn get_trace_spans<'life0, 'life1, 'async_trait>(
pool: &'life0 Pool<Postgres>,
trace_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceSpan>, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
Sourcefn get_trace_metrics<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
pool: &'life0 Pool<Postgres>,
space: Option<&'life1 str>,
name: Option<&'life2 str>,
version: Option<&'life3 str>,
start_time: DateTime<Utc>,
end_time: DateTime<Utc>,
bucket_interval_str: &'life4 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceMetricBucket>, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn get_trace_metrics<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
pool: &'life0 Pool<Postgres>,
space: Option<&'life1 str>,
name: Option<&'life2 str>,
version: Option<&'life3 str>,
start_time: DateTime<Utc>,
end_time: DateTime<Utc>,
bucket_interval_str: &'life4 str,
) -> Pin<Box<dyn Future<Output = Result<Vec<TraceMetricBucket>, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn refresh_trace_summary<'life0, 'async_trait>(
pool: &'life0 Pool<Postgres>,
) -> Pin<Box<dyn Future<Output = Result<PgQueryResult, SqlError>> + Send + 'async_trait>>where
'life0: 'async_trait,
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.