Skip to content

[BUG]: ddtrace breaks applications with OpenAI usage #15585

@vilmar-hillow

Description

@vilmar-hillow

Tracer Version(s)

4.0.0

Python Version(s)

3.13.2

Pip Version(s)

N/A

Bug Report

It seems like when running an application that initializes an OpenAI client with function as an api key isn't possible, even with no LLM observability explicitly enabled.

Expected behaviour:

  • ddtrace doesn't block the application from running, especially with no LLM observability configured explicitly.

Reproduction Code

import logging

import azure.identity
import openai

logging.basicConfig(level=logging.ERROR)

OPENAI_AZURE_URL = "https://foo.openai.azure.com/openai/v1/"
OPENAI_MODEL = "gpt-4.1-nano"

token_provider = azure.identity.get_bearer_token_provider(
    azure.identity.AzureCliCredential(),
    "https://cognitiveservices.azure.com/.default",
)

client = openai.OpenAI(base_url=OPENAI_AZURE_URL, api_key=token_provider)

Run with ddtrace-run python sample.py or DD_LLMOBS_ENABLED=false ddtrace-run python sample.py

Error Logs

Traceback (most recent call last):
  File "/home/.../test_ddtrace_fail.py", line 16, in <module>
    client = openai.OpenAI(base_url=OPENAI_AZURE_URL, api_key=token_provider)
  File "/home/.../.venv/lib/python3.13/site-packages/ddtrace/contrib/internal/trace_utils.py", line 315, in wrapper
    return func(mod, pin, wrapped, instance, args, kwargs)
  File "/home/.../.venv/lib/python3.13/site-packages/ddtrace/contrib/internal/openai/patch.py", line 200, in patched_client_init
    integration.user_api_key = api_key
    ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/.../.venv/lib/python3.13/site-packages/ddtrace/llmobs/_integrations/openai.py", line 60, in user_api_key
    self._user_api_key = "sk-...%s" % value[-4:]
                                      ~~~~~^^^^^
TypeError: 'function' object is not subscriptable

Libraries in Use

ddtrace==4.0.0
openai==2.9.0
azure-identity==1.25.1

Operating System

Ubuntu 24.04

Metadata

Metadata

Assignees

No one assigned

    Labels

    MLObsML Observability (LLMObs)bug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions