ADK Java OTel spans do not expose tool-call execution correctly in Langfuse/OpenInference
Los mantenedores suelen responder en 1 día
@hemasekhar-p ya está trabajando en esto.
Desde el 29/5/2026.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
🔴 Required Information
Describe the Bug:
ADK Java traces exported to Langfuse via OTLP show call_llm spans, but tool-call execution is not represented correctly: tools appear as "not called", and execute_tool visibility/payload mapping is missing or inconsistent even when tools were actually invoked.
Steps to Reproduce:
- Create an ADK Java agent with MCP tools (for example,
list_premerge_failed_tests_by_jobandlist_unhealthy_tests). - Configure OpenTelemetry export to Langfuse using
OtlpHttpSpanExporter. - Run an agent prompt that should invoke those tools.
- Open the resulting trace in Langfuse UI and inspect the
call_llmobservation and tool section. - Observe that tools are displayed as "not called" and no reliable
execute_toolobservation/payload is shown.
Expected Behavior:
When tools execute, Langfuse should show them as called, include execute_tool observation visibility, and render tool request/response payloads correctly.
Observed Behavior:
call_llmis visible in timeline.- Tools are shown as "not called" in the same trace.
- Tool-call visibility/payload mapping is missing or inconsistent.
- No crash, but observability is incorrect/incomplete for tool execution.
Environment Details:
- ADK Library Version (see maven dependency):
com.google.adk:google-adk:1.2.0(google-adk-spring-ai:1.2.0) - OS: macOS
- TS Version (tsc --version): N/A (Java integration)
Model Information:
- Which model is being used:
qwen-3.5-122b
🟡 Optional Information
Regression:
Unknown.
Logs:
Langfuse UI observation:
- call_llm span present
- Tools section shows entries as "not called"
- Agent output text indicates tools were expected/executed in flow
Screenshots / Video:
Additional Context:
- ADK Java appears to emit ADK-specific attributes (e.g.
gcp.vertex.agent.tool_call_args,gcp.vertex.agent.tool_response,gcp.vertex.agent.llm_request,gcp.vertex.agent.llm_response). - Langfuse/OpenInference expects standard tool/IO mapping on spans (e.g.
input.value,output.value) for reliable rendering.
Minimal Reproduction Code:
// Pseudocode reproduction shape:
// 1) Build LlmAgent with MCP tools
// 2) Enable OTLP export to Langfuse
// 3) Trigger prompt that should call tools
// 4) Inspect Langfuse trace: call_llm visible, tools shown as "not called"
How often has this issue occurred?:
- 100%
- Lenguaje dominante
- Java
- Estrellas
- 1.7k
- Forks
- 421
- Merge medio
- 3 d 15 h
- PR fusionados (30 d)
- 32
Preparar el entorno
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de google/adk-java
-
Approved tool call re-runs on every later user turn if it never got a function responsePosiblemente ocupada @hemasekhar-p la tomó hace 1 día. Abiertoneeds review
google/adk-java#1556 · 1 comentario · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
LocalSkillSource.listResources returns backslash-separated paths on WindowsPosiblemente ocupada @hemasekhar-p la tomó hace 1 día. Abiertoneeds review
google/adk-java#1541 · 1 comentario · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Context caching (ContextCacheConfig) is a silent no-op: config is plumbed to InvocationContext but never readPosiblemente ocupada @hemasekhar-p la tomó hace 3 días. Abiertoneeds review
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
google/adk-java#1530 · 1 comentario · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
MCP toolset: in-model built-ins (e.g. google_search) can be shadowed by a server tool; a server tool named set_model_response aborts the runPosiblemente ocupada @hemasekhar-p la tomó hace 9 días. Abiertoneeds review
google/adk-java#1513 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
[FEATURE] Integrating Foundgine as a Semantic Execution Layer for AI AgentsPosiblemente ocupada @hirematha la tomó hace 12 días. Abiertoneeds review
google/adk-java#1506 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de google/adk-java
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
ci-failure-cause test-failure
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
nextcloud/notes-android#3367 ·
Los mantenedores suelen responder en 1 día
-
:wave: team-triage a:chore in:isolated-projects in:kotlin-dsl
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día