pub struct PerfettoTraceTableFunction { /* private fields */ }Expand description
PerfettoTraceTableFunction generates Perfetto trace chunks from process telemetry data.
SQL Interface:
SELECT chunk_id, chunk_data
FROM perfetto_trace_chunks(
'process_id', -- Process UUID (required)
'span_types', -- 'thread', 'async', or 'both' (required)
TIMESTAMP '2024-01-01T00:00:00Z', -- Start time as UTC timestamp (required)
TIMESTAMP '2024-01-01T01:00:00Z' -- End time as UTC timestamp (required)
) ORDER BY chunk_idReturns a table with schema:
- chunk_id: Int32 - Sequential chunk identifier
- chunk_data: Binary - Binary protobuf TracePacket data
Implementations§
Source§impl PerfettoTraceTableFunction
impl PerfettoTraceTableFunction
pub fn new( lakehouse: Arc<LakehouseContext>, view_factory: Arc<ViewFactory>, part_provider: Arc<dyn QueryPartitionProvider>, ) -> PerfettoTraceTableFunction
Sourcepub fn output_schema() -> Arc<Schema>
pub fn output_schema() -> Arc<Schema>
Create the output schema for the table function
Trait Implementations§
Source§impl Debug for PerfettoTraceTableFunction
impl Debug for PerfettoTraceTableFunction
Auto Trait Implementations§
impl Freeze for PerfettoTraceTableFunction
impl !RefUnwindSafe for PerfettoTraceTableFunction
impl Send for PerfettoTraceTableFunction
impl Sync for PerfettoTraceTableFunction
impl Unpin for PerfettoTraceTableFunction
impl !UnwindSafe for PerfettoTraceTableFunction
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].