Loading...
Loading...
Stop grepping stdout to debug LLM apps. Emit JSON logs with request IDs, wire OpenTelemetry and Arize Phoenix, and get a clickable timeline of every routing decision, tool call, and token burned.
Message a mentor about fit, prerequisites, or where to start. Replies come on WhatsApp, usually within a day.
Engineers are learning here from
Emit JSON logs with request IDs and OpenTelemetry spans across every tool call in a routing agent. Click a trace and see exactly what your agent did, which tool ran, how many tokens it burned, and why it failed.
Emit JSON logs with request IDs and OpenTelemetry spans across every tool call so you can click a trace and see exactly what your agent did.
What you'll ship
What you'll learn
Curriculum
Why tracing beats logging
Understand why text logs fail for nondeterministic LLM apps and meet the three pillars of observability.
Structured logging you can grep and ship
Replace print with JSON logs, thread a request ID through every tool call, and decide what to log and what never to log.
OpenTelemetry and Arize Phoenix
Run Phoenix locally, register an OTel tracer, and auto-instrument OpenAI calls with OpenInference.
Custom spans for every tool
Write a @trace decorator that adds token, cost, and latency attributes, then wire it into router, SQL, RAG, and web search.
Trace-driven debugging
Replay a failing trace in the Phoenix UI, set SLO alerts, and graduate to a runbook you can hand to a teammate.
Who it's for
who ship agents into production with print statements and hope, then cannot explain what happened when something breaks
who bolted OpenAI calls onto an existing service and now cannot pinpoint which tool caused the latency spike or the bill surprise
who need structured logs and trace propagation across an LLM tool chain the same way they already have it for microservices
FAQ
No. The course introduces traces, spans, and attributes from first principles, then walks through wiring them up inside a real Python agent. If you have used OpenTelemetry before, you can skim the early lessons and focus on the LLM-specific attributes.
Phoenix runs locally, stores traces on disk, and speaks the OpenTelemetry protocol. You can swap it for any OTel-compatible backend (Langfuse, Honeycomb, Datadog) without changing your instrumentation code. The course teaches the wiring, not a vendor.
Yes. The workshop uses an OpenAI-compatible client, so anything that speaks the OpenAI API (including OpenRouter, Fireworks, and local vLLM) works without changes. The OpenInference instrumentation hooks the client, not the endpoint.
The routing agent uses Serper for web search. Without a key the web route is skipped and the agent still works for SQL and RAG, so you can complete every lesson and see every span type.
Pricing
One subscription unlocks every paid course and workshop replay. Pick yearly or monthly.
Unlock with Pro
You save 47% with regional pricing
Billed annually. Cancel anytime.
Still deciding? Ask Param a question
LLM Observability with Arize Phoenix
From $16/mo with Pro