# AzureAIOpenTelemetryTracer

> **Class** in `langchain_azure_ai`

📖 [View in docs](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer)

LangChain callback handler that emits OpenTelemetry GenAI spans.

## Signature

```python
AzureAIOpenTelemetryTracer(
    self,
    *,
    connection_string: Optional[str] = None,
    enable_content_recording: bool = True,
    project_endpoint: Optional[str] = None,
    credential: Optional[Any] = None,
    name: str = 'AzureAIOpenTelemetryTracer',
    agent_id: Optional[str] = None,
    provider_name: Optional[str] = None,
    message_keys: Optional[Sequence[str]] = None,
    message_paths: Optional[Sequence[str]] = None,
    trace_all_langgraph_nodes: bool = False,
    ignore_start_node: bool = True,
    compat_create_agent_filtering: bool = True,
    auto_configure_azure_monitor: Optional[bool] = None,
    trace_state: Optional[bool] = None,
    max_state_size: Optional[int] = None,
    _prepare_messages_fn: Optional[Callable[..., tuple[Optional[str], Optional[str]]]] = None,
)
```

## Extends

- `BaseCallbackHandler`

## Constructors

```python
__init__(
    self,
    *,
    connection_string: Optional[str] = None,
    enable_content_recording: bool = True,
    project_endpoint: Optional[str] = None,
    credential: Optional[Any] = None,
    name: str = 'AzureAIOpenTelemetryTracer',
    agent_id: Optional[str] = None,
    provider_name: Optional[str] = None,
    message_keys: Optional[Sequence[str]] = None,
    message_paths: Optional[Sequence[str]] = None,
    trace_all_langgraph_nodes: bool = False,
    ignore_start_node: bool = True,
    compat_create_agent_filtering: bool = True,
    auto_configure_azure_monitor: Optional[bool] = None,
    trace_state: Optional[bool] = None,
    max_state_size: Optional[int] = None,
    _prepare_messages_fn: Optional[Callable[..., tuple[Optional[str], Optional[str]]]] = None,
) -> None
```

| Name | Type |
|------|------|
| `connection_string` | `Optional[str]` |
| `enable_content_recording` | `bool` |
| `project_endpoint` | `Optional[str]` |
| `credential` | `Optional[Any]` |
| `name` | `str` |
| `agent_id` | `Optional[str]` |
| `provider_name` | `Optional[str]` |
| `message_keys` | `Optional[Sequence[str]]` |
| `message_paths` | `Optional[Sequence[str]]` |
| `trace_all_langgraph_nodes` | `bool` |
| `ignore_start_node` | `bool` |
| `compat_create_agent_filtering` | `bool` |
| `auto_configure_azure_monitor` | `Optional[bool]` |
| `trace_state` | `Optional[bool]` |
| `max_state_size` | `Optional[int]` |
| `_prepare_messages_fn` | `Optional[Callable[..., tuple[Optional[str], Optional[str]]]]` |


## Methods

- [`use_propagated_context()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/use_propagated_context)
- [`on_chain_start()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_chain_start)
- [`on_chain_end()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_chain_end)
- [`on_chain_error()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_chain_error)
- [`on_chat_model_start()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_chat_model_start)
- [`on_llm_start()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_llm_start)
- [`on_llm_end()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_llm_end)
- [`on_llm_error()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_llm_error)
- [`on_llm_new_token()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_llm_new_token)
- [`on_tool_start()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_tool_start)
- [`on_tool_end()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_tool_end)
- [`on_tool_error()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_tool_error)
- [`on_agent_action()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_agent_action)
- [`on_agent_finish()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_agent_finish)
- [`on_retriever_start()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_retriever_start)
- [`on_retriever_end()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_retriever_end)
- [`on_retriever_error()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/on_retriever_error)
- [`emit_evaluation_event()`](https://reference.langchain.com/python/langchain-azure-ai/callbacks/tracers/inference_tracing/AzureAIOpenTelemetryTracer/emit_evaluation_event)

---

[View source on GitHub](https://github.com/langchain-ai/langchain-azure/blob/7a6a664d617264df8dcb12fcfb1bacc09f21d504/libs/azure-ai/langchain_azure_ai/callbacks/tracers/inference_tracing.py#L1304)