feat: gate telemetry behind Cargo feature flags (#8119)

Signed-off-by: Rodolfo Olivieri <rolivier@redhat.com>
Signed-off-by: Douwe Osinga <douwe@squareup.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: Douwe Osinga <douwe@squareup.com>
This commit is contained in:
Rodolfo Olivieri
2026-03-26 13:33:43 -03:00
committed by GitHub
parent 8c8bb1051d
commit adc0e221fc
20 changed files with 111 additions and 38 deletions
+7
View File
@@ -583,6 +583,7 @@ impl Agent {
)
.await;
result.unwrap_or_else(|e| {
#[cfg(feature = "telemetry")]
crate::posthog::emit_error(
"tool_execution_failed",
&format!("{}: {}", tool_call.name, e),
@@ -943,6 +944,7 @@ impl Agent {
let command = message_text.split_whitespace().next();
if let Some(cmd) = command {
if crate::slash_commands::get_recipe_for_command(cmd).is_some() {
#[cfg(feature = "telemetry")]
crate::posthog::emit_custom_slash_command_used();
}
}
@@ -1487,6 +1489,7 @@ impl Agent {
}
}
Err(ref provider_err @ ProviderError::ContextLengthExceeded(_)) => {
#[cfg(feature = "telemetry")]
crate::posthog::emit_error(provider_err.telemetry_type(), &provider_err.to_string());
compaction_attempts += 1;
@@ -1531,6 +1534,7 @@ impl Agent {
break;
}
Err(e) => {
#[cfg(feature = "telemetry")]
crate::posthog::emit_error("compaction_failed", &e.to_string());
error!("Compaction failed: {}", e);
yield AgentEvent::Message(
@@ -1543,6 +1547,7 @@ impl Agent {
}
}
Err(ref provider_err @ ProviderError::CreditsExhausted { details: _, ref top_up_url }) => {
#[cfg(feature = "telemetry")]
crate::posthog::emit_error(provider_err.telemetry_type(), &provider_err.to_string());
error!("Error: {}", provider_err);
@@ -1566,6 +1571,7 @@ impl Agent {
break;
}
Err(ref provider_err @ ProviderError::NetworkError(_)) => {
#[cfg(feature = "telemetry")]
crate::posthog::emit_error(provider_err.telemetry_type(), &provider_err.to_string());
error!("Error: {}", provider_err);
yield AgentEvent::Message(
@@ -1576,6 +1582,7 @@ impl Agent {
break;
}
Err(ref provider_err) => {
#[cfg(feature = "telemetry")]
crate::posthog::emit_error(provider_err.telemetry_type(), &provider_err.to_string());
error!("Error: {}", provider_err);
yield AgentEvent::Message(
+1
View File
@@ -140,6 +140,7 @@ impl RetryManager {
"Maximum retry attempts ({}) exceeded",
retry_config.max_retries
);
#[cfg(feature = "telemetry")]
crate::posthog::emit_error(
"retry_max_exceeded",
&format!("Max retries ({}) exceeded", retry_config.max_retries),