diff --git a/control_plane/src/emit/otap.rs b/control_plane/src/emit/otap.rs index 2ba50f227..ed056b90b 100644 --- a/control_plane/src/emit/otap.rs +++ b/control_plane/src/emit/otap.rs @@ -284,10 +284,13 @@ fn build_asap_sketches_config(sp: &EdgeSketchProcessor, window_secs: Option } else { m.insert("mode".into(), Value::String("batch".to_string())); } - m.insert( - "aggregation_id".into(), - Value::String(sp.aggregation_id.clone()), - ); + // PR 5 alignment (mirroring #244 / #246 / #250's wire cleanups): + // `aggregation_id` was the controller-allocated string IDs the + // patched asap-otel processors don't consume — sid identity is + // content-addressed at the backend via `(metric, attrs_fingerprint, + // agg_kind_canonical)`. The field stays on `EdgeSketchProcessor` + // as internal emitter plumbing for cross-stage references during + // the DAG walk; it just doesn't reach the wire here. m.insert( "sketch_kind".into(), Value::String(sketch_kind_tag(&sp.sketch_kind).into()), diff --git a/control_plane/src/emit/telegraf.rs b/control_plane/src/emit/telegraf.rs index 25fb59cc6..d28365d63 100644 --- a/control_plane/src/emit/telegraf.rs +++ b/control_plane/src/emit/telegraf.rs @@ -155,7 +155,12 @@ fn emit_processors_allsketches( if let Some(w) = window_secs { out.push_str(&format!(" window_duration = \"{w}s\"\n")); } - out.push_str(&format!(" aggregation_id = \"{}\"\n", sp.aggregation_id)); + // PR 5 alignment (mirroring #244 / #246 / #250's wire cleanups): + // `aggregation_id` was the controller-allocated string the + // patched asap-otel processors don't consume — sid identity is + // content-addressed server-side via `(metric, attrs_fingerprint, + // agg_kind_canonical)`. Field stays on `EdgeSketchProcessor` as + // internal emit plumbing; it just doesn't reach the wire here. out.push_str(&format!( " sketch_kind = \"{}\"\n", sketch_kind_tag(&sp.sketch_kind)