pub struct TelemetryRecord {
pub schema_version: u16,
pub record_id: TelemetryRecordId,
pub run_id: RunId,
pub agent_id: AgentId,
pub source_cursor: Option<TelemetrySourceCursor>,
pub runtime_package_fingerprint: String,
pub privacy: PrivacyClass,
pub retention: RetentionClass,
pub content_capture: TelemetryContentCaptureMode,
pub redaction_policy_id: String,
pub policy_refs: Vec<PolicyRef>,
pub payload: TelemetryRecordPayload,
}Expand description
Carries the telemetry record record payload for journal, event, or fixture surfaces. Creating or cloning it only preserves serialized SDK state; append, publish, replay, or export effects are documented on the runtime and port methods that store it.
Fields§
§schema_version: u16Wire schema version used for compatibility checks.
record_id: TelemetryRecordIdStable record id used for typed lineage, lookup, or dedupe.
run_id: RunIdRun identifier used for lineage, filtering, replay, and dedupe.
agent_id: AgentIdAgent identifier used for lineage, filtering, and ownership checks.
source_cursor: Option<TelemetrySourceCursor>Cursor identifying the source event or journal position. Use it to connect projections back to durable evidence.
runtime_package_fingerprint: StringFingerprint of the runtime package snapshot in force when this value was produced. Use it for replay, dedupe, and package-lineage checks; the field is evidence and does not execute package behavior.
privacy: PrivacyClassPrivacy class used for projection, telemetry, and raw-content access decisions.
retention: RetentionClassRetention class used by hosts and sinks when storing or exporting this item.
content_capture: TelemetryContentCaptureModeContent capture used by this record or request.
redaction_policy_id: StringStable redaction policy id used for typed lineage, lookup, or dedupe.
policy_refs: Vec<PolicyRef>Policy references that govern admission, projection, execution, or delivery.
payload: TelemetryRecordPayloadPayload carried by this record. Use the surrounding policy and redaction fields to decide whether it can be exposed.
Implementations§
Source§impl TelemetryRecord
impl TelemetryRecord
Sourcepub fn usage(
record_id: TelemetryRecordId,
projection: &TelemetryProjection,
usage_record_id: TelemetryUsageRecordId,
) -> Self
pub fn usage( record_id: TelemetryRecordId, projection: &TelemetryProjection, usage_record_id: TelemetryUsageRecordId, ) -> Self
Returns usage derived from the supplied state. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Sourcepub fn cost(
record_id: TelemetryRecordId,
projection: &TelemetryProjection,
cost_record_id: TelemetryCostRecordId,
correction_ref: Option<TelemetryCostRecordId>,
) -> Self
pub fn cost( record_id: TelemetryRecordId, projection: &TelemetryProjection, cost_record_id: TelemetryCostRecordId, correction_ref: Option<TelemetryCostRecordId>, ) -> Self
Returns cost derived from the supplied state. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Sourcepub fn sink_failed(
record_id: TelemetryRecordId,
projection: &TelemetryProjection,
failure: TelemetrySinkFailureRecord,
) -> Self
pub fn sink_failed( record_id: TelemetryRecordId, projection: &TelemetryProjection, failure: TelemetrySinkFailureRecord, ) -> Self
Returns an updated value with sink failed configured. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Sourcepub fn sink_recovered(
record_id: TelemetryRecordId,
projection: &TelemetryProjection,
recovery: TelemetrySinkRecoveryRecord,
) -> Self
pub fn sink_recovered( record_id: TelemetryRecordId, projection: &TelemetryProjection, recovery: TelemetrySinkRecoveryRecord, ) -> Self
Returns an updated value with sink recovered configured. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Sourcepub fn export_cursor(
record_id: TelemetryRecordId,
projection: &TelemetryProjection,
cursor: TelemetryExportCursor,
) -> Self
pub fn export_cursor( record_id: TelemetryRecordId, projection: &TelemetryProjection, cursor: TelemetryExportCursor, ) -> Self
Returns an updated value with export cursor configured. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Trait Implementations§
Source§impl Clone for TelemetryRecord
impl Clone for TelemetryRecord
Source§fn clone(&self) -> TelemetryRecord
fn clone(&self) -> TelemetryRecord
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TelemetryRecord
impl Debug for TelemetryRecord
Source§impl<'de> Deserialize<'de> for TelemetryRecord
impl<'de> Deserialize<'de> for TelemetryRecord
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for TelemetryRecord
impl PartialEq for TelemetryRecord
Source§fn eq(&self, other: &TelemetryRecord) -> bool
fn eq(&self, other: &TelemetryRecord) -> bool
self and other values to be equal, and is used by ==.