Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

ADK Java OTel spans do not expose tool-call execution correctly in Langfuse/OpenInference

Open
#1,235 3 comments 0 reactions 1 assignee View on GitHub

Maintainers usually reply within 1 day

@hemasekhar-p is already working on this.

Since May 29, 2026.

Assessment

This issue has not been assessed yet.

Description

needs review

🔴 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:

  1. Create an ADK Java agent with MCP tools (for example, list_premerge_failed_tests_by_job and list_unhealthy_tests).
  2. Configure OpenTelemetry export to Langfuse using OtlpHttpSpanExporter.
  3. Run an agent prompt that should invoke those tools.
  4. Open the resulting trace in Langfuse UI and inspect the call_llm observation and tool section.
  5. Observe that tools are displayed as "not called" and no reliable execute_tool observation/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_llm is 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:

Image

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%
Dominant language
Java
Stars
1.7k
Forks
431
Avg merge
3d 2h
Merged PRs (30d)
46

Getting set up

Open in Codespaces

Starts the project's dev container in your browser, under your own GitHub account.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from google/adk-java

All issues in google/adk-java

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.