How to set it up
How traces work in Oodle
Send once. Then search, read, and follow the cause.
1 · Send
Send everything you already have.
Oodle takes what your stack already produces: OpenAI, Anthropic, LangChain, Pydantic AI, LiteLLM, the Langfuse SDK, or plain OpenTelemetry. No new SDK, and nothing is sampled on the way in.
LLM Calls
0.00K
Total Cost
$0.000
Total Tokens
0K
Error Rate
0.00%
P95 Model Latency
0.0s
2 · Read
Read the whole conversation.
The system prompt, every reply, every tool call and what came back. Sentiment and cost on each turn, so you can see where a conversation went wrong, not just that it did.
| Session ID | Traces | Sentiment | Total cost |
|---|---|---|---|
| 0bxF9Zq5-3gWH-4RNj-xHoo-Bkr4eKoEtQLZ | 1 | -0.82 | $0.0033 |
| CYG0O2dR-uNq6-4Lpp-sMpM-NoG0zZl0Pc6a | 1 | – | $0.0036 |
| 5PgrnZYZ-Y6Ge-4U4r-1yAX-hq0QYUQcZMjt | 1 | +0.00 | $0.0002 |
| EMo8gVqV-j5ZB-4MQH-Dvfm-3ApMKVqzCswR | 1 | +0.46 | $0.0007 |
| 7TDLf4K7-I4K4-4Bly-tHQp-0Xouoloy2bMs | 1 | -0.29 | $0.0075 |
| KIA4QEqL-Z1sg-4UPA-3SJ2-F75vI6U2DJ9u | 1 | +0.46 | $0.0007 |
- UserI have a problem with my order #4471, the camera arrived broken.
- AssistantSorry to hear that. Let me look up the order.getOrderDetails · 340ms
- Tool{ "status": "delivered", "eligible_for_return": true }
- AssistantFiling the return now.initiateReturn · 503
- AssistantYour return has been filed. You’ll get a label by email.
3 · Follow
Not every agent bug is in the agent.
The model call, the API request that started it and the database query the tool made are all in one trace. When a reply is slow or wrong, you follow that one trace to the cause.
seq scan on orders, 2.1M rows
“Sorry for the wait, I found your order.”
4 · Search
Find any conversation, or let your agent.
Search by sentiment, tool, user or the words in the conversation. Ask in plain English and Oodle writes the query. Your coding agent can do the same over MCP and work through every session for you.
