[fix] fix model config logging to remove api key (#1619)
This commit is contained in:
@@ -183,7 +183,7 @@ impl Provider for AnthropicProvider {
|
||||
let usage = get_usage(&response)?;
|
||||
|
||||
let model = get_model(&response);
|
||||
emit_debug_trace(self, &payload, &response, &usage);
|
||||
emit_debug_trace(&self.model, &payload, &response, &usage);
|
||||
Ok((message, ProviderUsage::new(model, usage)))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -142,7 +142,7 @@ impl Provider for AzureProvider {
|
||||
Err(e) => return Err(e),
|
||||
};
|
||||
let model = get_model(&response);
|
||||
emit_debug_trace(self, &payload, &response, &usage);
|
||||
emit_debug_trace(&self.model, &payload, &response, &usage);
|
||||
Ok((message, ProviderUsage::new(model, usage)))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -270,7 +270,7 @@ impl Provider for DatabricksProvider {
|
||||
Err(e) => return Err(e),
|
||||
};
|
||||
let model = get_model(&response);
|
||||
super::utils::emit_debug_trace(self, &payload, &response, &usage);
|
||||
super::utils::emit_debug_trace(&self.model, &payload, &response, &usage);
|
||||
|
||||
Ok((message, ProviderUsage::new(model, usage)))
|
||||
}
|
||||
|
||||
@@ -501,7 +501,7 @@ impl Provider for GcpVertexAIProvider {
|
||||
let response = self.post(request.clone(), &context).await?;
|
||||
let usage = get_usage(&response, &context)?;
|
||||
|
||||
emit_debug_trace(self, &request, &response, &usage);
|
||||
emit_debug_trace(&self.model, &request, &response, &usage);
|
||||
|
||||
// Convert response to message
|
||||
let message = response_to_message(response, context)?;
|
||||
|
||||
@@ -133,7 +133,7 @@ impl Provider for GoogleProvider {
|
||||
Some(model_version) => model_version.as_str().unwrap_or_default().to_string(),
|
||||
None => self.model.model_name.clone(),
|
||||
};
|
||||
emit_debug_trace(self, &payload, &response, &usage);
|
||||
emit_debug_trace(&self.model, &payload, &response, &usage);
|
||||
let provider_usage = ProviderUsage::new(model, usage);
|
||||
Ok((message, provider_usage))
|
||||
}
|
||||
|
||||
@@ -148,7 +148,7 @@ impl Provider for GroqProvider {
|
||||
Err(e) => return Err(e),
|
||||
};
|
||||
let model = get_model(&response);
|
||||
super::utils::emit_debug_trace(self, &payload, &response, &usage);
|
||||
super::utils::emit_debug_trace(&self.model, &payload, &response, &usage);
|
||||
Ok((message, ProviderUsage::new(model, usage)))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -205,7 +205,7 @@ impl Provider for OllamaProvider {
|
||||
Err(e) => return Err(e),
|
||||
};
|
||||
let model = get_model(&response);
|
||||
super::utils::emit_debug_trace(self, &payload, &response, &usage);
|
||||
super::utils::emit_debug_trace(&self.model, &payload, &response, &usage);
|
||||
Ok((message, ProviderUsage::new(model, usage)))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -150,7 +150,7 @@ impl Provider for OpenAiProvider {
|
||||
Err(e) => return Err(e),
|
||||
};
|
||||
let model = get_model(&response);
|
||||
emit_debug_trace(self, &payload, &response, &usage);
|
||||
emit_debug_trace(&self.model, &payload, &response, &usage);
|
||||
Ok((message, ProviderUsage::new(model, usage)))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -238,7 +238,7 @@ impl Provider for OpenRouterProvider {
|
||||
Err(e) => return Err(e),
|
||||
};
|
||||
let model = get_model(&response);
|
||||
emit_debug_trace(self, &payload, &response, &usage);
|
||||
emit_debug_trace(&self.model, &payload, &response, &usage);
|
||||
Ok((message, ProviderUsage::new(model, usage)))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
use super::base::Usage;
|
||||
use super::errors::GoogleErrorCode;
|
||||
use crate::model::ModelConfig;
|
||||
use anyhow::Result;
|
||||
use base64::Engine;
|
||||
use regex::Regex;
|
||||
@@ -316,21 +317,15 @@ pub fn unescape_json_values(value: &Value) -> Value {
|
||||
}
|
||||
}
|
||||
|
||||
pub fn emit_debug_trace<T: serde::Serialize>(
|
||||
model_config: &T,
|
||||
payload: &impl serde::Serialize,
|
||||
pub fn emit_debug_trace(
|
||||
model_config: &ModelConfig,
|
||||
payload: &Value,
|
||||
response: &Value,
|
||||
usage: &Usage,
|
||||
) {
|
||||
// Handle both Map<String, Value> and Value payload types
|
||||
let payload_str = match serde_json::to_value(payload) {
|
||||
Ok(value) => serde_json::to_string_pretty(&value).unwrap_or_default(),
|
||||
Err(_) => serde_json::to_string_pretty(&payload).unwrap_or_default(),
|
||||
};
|
||||
|
||||
tracing::debug!(
|
||||
model_config = %serde_json::to_string_pretty(model_config).unwrap_or_default(),
|
||||
input = %payload_str,
|
||||
input = %serde_json::to_string_pretty(payload).unwrap_or_default(),
|
||||
output = %serde_json::to_string_pretty(response).unwrap_or_default(),
|
||||
input_tokens = ?usage.input_tokens.unwrap_or_default(),
|
||||
output_tokens = ?usage.output_tokens.unwrap_or_default(),
|
||||
|
||||
Reference in New Issue
Block a user