nit: trace span for regular task (#8053)

Logs are too spammy

---------

Co-authored-by: Anton Panasenko <apanasenko@openai.com>
This commit is contained in:
jif-oaiandAnton Panasenko authored and GitHub committed 2025-12-16 16:53:15 +00:00
1 parent 021c9a60e5
commit d7482510b1
11 files changed
+25 -22

No files matched your search

+1 -1
View File
@@ -58,7 +58,7 @@ impl<T: HttpTransport, A: AuthProvider> ResponsesClient<T, A> {
self.stream(request.body, request.headers).await self.stream(request.body, request.headers).await
} }
#[instrument(skip_all, err)] #[instrument(level = "trace", skip_all, err)]
pub async fn stream_prompt( pub async fn stream_prompt(
&self, &self,
model: &str, model: &str,
+2 -2
View File
@@ -181,7 +181,7 @@ mod tests {
use opentelemetry::trace::TracerProvider; use opentelemetry::trace::TracerProvider;
use opentelemetry_sdk::propagation::TraceContextPropagator; use opentelemetry_sdk::propagation::TraceContextPropagator;
use opentelemetry_sdk::trace::SdkTracerProvider; use opentelemetry_sdk::trace::SdkTracerProvider;
use tracing::info_span; use tracing::trace_span;
use tracing_subscriber::layer::SubscriberExt; use tracing_subscriber::layer::SubscriberExt;
use tracing_subscriber::util::SubscriberInitExt; use tracing_subscriber::util::SubscriberInitExt;
@@ -195,7 +195,7 @@ mod tests {
tracing_subscriber::registry().with(tracing_opentelemetry::layer().with_tracer(tracer)); tracing_subscriber::registry().with(tracing_opentelemetry::layer().with_tracer(tracer));
let _guard = subscriber.set_default(); let _guard = subscriber.set_default();
let span = info_span!("client_request"); let span = trace_span!("client_request");
let _entered = span.enter(); let _entered = span.enter();
let span_context = span.context().span().span_context().clone(); let span_context = span.context().span().span_context().clone();
+7 -7
View File
@@ -66,8 +66,8 @@ use tracing::debug;
use tracing::error; use tracing::error;
use tracing::field; use tracing::field;
use tracing::info; use tracing::info;
use tracing::info_span;
use tracing::instrument; use tracing::instrument;
use tracing::trace_span;
use tracing::warn; use tracing::warn;
use crate::ModelProviderInfo; use crate::ModelProviderInfo;
@@ -2297,7 +2297,7 @@ async fn run_auto_compact(sess: &Arc<Session>, turn_context: &Arc<TurnContext>)
} }
} }
#[instrument( #[instrument(level = "trace",
skip_all, skip_all,
fields( fields(
turn_id = %turn_context.sub_id, turn_id = %turn_context.sub_id,
@@ -2437,7 +2437,7 @@ async fn drain_in_flight(
} }
#[allow(clippy::too_many_arguments)] #[allow(clippy::too_many_arguments)]
#[instrument( #[instrument(level = "trace",
skip_all, skip_all,
fields( fields(
turn_id = %turn_context.sub_id, turn_id = %turn_context.sub_id,
@@ -2466,7 +2466,7 @@ async fn try_run_turn(
.client .client
.clone() .clone()
.stream(prompt) .stream(prompt)
.instrument(info_span!("stream_request")) .instrument(trace_span!("stream_request"))
.or_cancel(&cancellation_token) .or_cancel(&cancellation_token)
.await??; .await??;
@@ -2482,9 +2482,9 @@ async fn try_run_turn(
let mut last_agent_message: Option<String> = None; let mut last_agent_message: Option<String> = None;
let mut active_item: Option<TurnItem> = None; let mut active_item: Option<TurnItem> = None;
let mut should_emit_turn_diff = false; let mut should_emit_turn_diff = false;
let receiving_span = info_span!("receiving_stream"); let receiving_span = trace_span!("receiving_stream");
let outcome: CodexResult<TurnRunResult> = loop { let outcome: CodexResult<TurnRunResult> = loop {
let handle_responses = info_span!( let handle_responses = trace_span!(
parent: &receiving_span, parent: &receiving_span,
"handle_responses", "handle_responses",
otel.name = field::Empty, otel.name = field::Empty,
@@ -2494,7 +2494,7 @@ async fn try_run_turn(
let event = match stream let event = match stream
.next() .next()
.instrument(info_span!(parent: &handle_responses, "receiving")) .instrument(trace_span!(parent: &handle_responses, "receiving"))
.or_cancel(&cancellation_token) .or_cancel(&cancellation_token)
.await .await
{ {
+1 -1
View File
@@ -398,7 +398,7 @@ impl McpConnectionManager {
/// Returns a single map that contains all tools. Each key is the /// Returns a single map that contains all tools. Each key is the
/// fully-qualified name for the tool. /// fully-qualified name for the tool.
#[instrument(skip_all)] #[instrument(level = "trace", skip_all)]
pub async fn list_all_tools(&self) -> HashMap<String, ToolInfo> { pub async fn list_all_tools(&self) -> HashMap<String, ToolInfo> {
let mut tools = HashMap::new(); let mut tools = HashMap::new();
for managed_client in self.clients.values() { for managed_client in self.clients.values() {
+1 -1
View File
@@ -39,7 +39,7 @@ pub(crate) struct HandleOutputCtx {
pub cancellation_token: CancellationToken, pub cancellation_token: CancellationToken,
} }
#[instrument(skip_all)] #[instrument(level = "trace", skip_all)]
pub(crate) async fn handle_output_item_done( pub(crate) async fn handle_output_item_done(
ctx: &mut HandleOutputCtx, ctx: &mut HandleOutputCtx,
item: ResponseItem, item: ResponseItem,
+2 -2
View File
@@ -7,7 +7,7 @@ use async_trait::async_trait;
use codex_protocol::user_input::UserInput; use codex_protocol::user_input::UserInput;
use tokio_util::sync::CancellationToken; use tokio_util::sync::CancellationToken;
use tracing::Instrument; use tracing::Instrument;
use tracing::info_span; use tracing::trace_span;
use super::SessionTask; use super::SessionTask;
use super::SessionTaskContext; use super::SessionTaskContext;
@@ -30,7 +30,7 @@ impl SessionTask for RegularTask {
) -> Option<String> { ) -> Option<String> {
let sess = session.clone_session(); let sess = session.clone_session();
let run_task_span = let run_task_span =
info_span!(parent: sess.services.otel_manager.current_span(), "run_task"); trace_span!(parent: sess.services.otel_manager.current_span(), "run_task");
run_task(sess, ctx, input, cancellation_token) run_task(sess, ctx, input, cancellation_token)
.instrument(run_task_span) .instrument(run_task_span)
.await .await
+3 -3
View File
@@ -6,8 +6,8 @@ use tokio_util::either::Either;
use tokio_util::sync::CancellationToken; use tokio_util::sync::CancellationToken;
use tokio_util::task::AbortOnDropHandle; use tokio_util::task::AbortOnDropHandle;
use tracing::Instrument; use tracing::Instrument;
use tracing::info_span;
use tracing::instrument; use tracing::instrument;
use tracing::trace_span;
use crate::codex::Session; use crate::codex::Session;
use crate::codex::TurnContext; use crate::codex::TurnContext;
@@ -45,7 +45,7 @@ impl ToolCallRuntime {
} }
} }
#[instrument(skip_all, fields(call = ?call))] #[instrument(level = "trace", skip_all, fields(call = ?call))]
pub(crate) fn handle_tool_call( pub(crate) fn handle_tool_call(
self, self,
call: ToolCall, call: ToolCall,
@@ -60,7 +60,7 @@ impl ToolCallRuntime {
let lock = Arc::clone(&self.parallel_execution); let lock = Arc::clone(&self.parallel_execution);
let started = Instant::now(); let started = Instant::now();
let dispatch_span = info_span!( let dispatch_span = trace_span!(
"dispatch_tool_call", "dispatch_tool_call",
otel.name = call.tool_name.as_str(), otel.name = call.tool_name.as_str(),
tool_name = call.tool_name.as_str(), tool_name = call.tool_name.as_str(),
+2 -2
View File
@@ -55,7 +55,7 @@ impl ToolRouter {
.any(|config| config.spec.name() == tool_name) .any(|config| config.spec.name() == tool_name)
} }
#[instrument(skip_all, err)] #[instrument(level = "trace", skip_all, err)]
pub async fn build_tool_call( pub async fn build_tool_call(
session: &Session, session: &Session,
item: ResponseItem, item: ResponseItem,
@@ -131,7 +131,7 @@ impl ToolRouter {
} }
} }
#[instrument(skip_all, err)] #[instrument(level = "trace", skip_all, err)]
pub async fn dispatch_tool_call( pub async fn dispatch_tool_call(
&self, &self,
session: Arc<Session>, session: Arc<Session>,
+3
View File
@@ -25,6 +25,7 @@ use core_test_support::test_codex::TestCodex;
use core_test_support::test_codex::test_codex; use core_test_support::test_codex::test_codex;
use core_test_support::wait_for_event; use core_test_support::wait_for_event;
use std::sync::Mutex; use std::sync::Mutex;
use tracing::Level;
use tracing_test::traced_test; use tracing_test::traced_test;
use tracing_subscriber::fmt::format::FmtSpan; use tracing_subscriber::fmt::format::FmtSpan;
@@ -454,6 +455,7 @@ async fn handle_responses_span_records_response_kind_and_tool_name() {
let subscriber = tracing_subscriber::fmt() let subscriber = tracing_subscriber::fmt()
.with_level(true) .with_level(true)
.with_ansi(false) .with_ansi(false)
.with_max_level(Level::TRACE)
.with_span_events(FmtSpan::FULL) .with_span_events(FmtSpan::FULL)
.with_writer(MockWriter::new(buffer)) .with_writer(MockWriter::new(buffer))
.finish(); .finish();
@@ -517,6 +519,7 @@ async fn record_responses_sets_span_fields_for_response_events() {
let subscriber = tracing_subscriber::fmt() let subscriber = tracing_subscriber::fmt()
.with_level(true) .with_level(true)
.with_ansi(false) .with_ansi(false)
.with_max_level(Level::TRACE)
.with_span_events(FmtSpan::FULL) .with_span_events(FmtSpan::FULL)
.with_writer(MockWriter::new(buffer)) .with_writer(MockWriter::new(buffer))
.finish(); .finish();
+2 -2
View File
@@ -25,7 +25,7 @@ use std::time::Instant;
use strum_macros::Display; use strum_macros::Display;
use tokio::time::error::Elapsed; use tokio::time::error::Elapsed;
use tracing::Span; use tracing::Span;
use tracing::info_span; use tracing::trace_span;
use tracing_opentelemetry::OpenTelemetrySpanExt; use tracing_opentelemetry::OpenTelemetrySpanExt;
#[derive(Debug, Clone, Serialize, Display)] #[derive(Debug, Clone, Serialize, Display)]
@@ -67,7 +67,7 @@ impl OtelManager {
terminal_type: String, terminal_type: String,
session_source: SessionSource, session_source: SessionSource,
) -> OtelManager { ) -> OtelManager {
let session_span = info_span!("new_session", conversation_id = %conversation_id, session_source = %session_source); let session_span = trace_span!("new_session", conversation_id = %conversation_id, session_source = %session_source);
if let Some(context) = traceparent_context_from_env() { if let Some(context) = traceparent_context_from_env() {
session_span.set_parent(context); session_span.set_parent(context);
+1 -1
View File
@@ -134,7 +134,7 @@ impl OtelProvider {
self.tracer.as_ref().map(|tracer| { self.tracer.as_ref().map(|tracer| {
tracing_opentelemetry::layer() tracing_opentelemetry::layer()
.with_tracer(tracer.clone()) .with_tracer(tracer.clone())
.with_filter(LevelFilter::INFO) .with_filter(LevelFilter::TRACE)
}) })
} }