Debugging Elixir Code - The Tools, The Mindset
summary
Shows how Elixir and Erlang tools like Observer, the Erlang debugger, dbg/:redbug/rexbug, Phoenix LiveDashboard, io.inspect and OpenTelemetry combine with practical tweaks — increasing Cowboy/ExUnit/Ecto timeouts — and then builds a macro-based def wrapper that injects iex.pry inserted breakpoints between lines. Adds a ETS flag plus next/resume helpers so next steps advance line-by-line. Prototype works for stepping and inspecting values but needs recompilation, misses macro-expanded locations and struggles with nested anonymous functions.
AI-written summary · about
chapters (34)
- 0:00Introduction
- 0:56About me
- 1:39Attitudes
- 2:01Stack Overflow
- 2:18Print to Console
- 2:41Hack Everything
- 3:43I Dont Need This
- 4:19You Dont
- 5:11Takeaways
- 6:40Good Design Choices
- 6:56Tools
- 7:28Observer
- 7:42Bug
- 8:56Elixir Tools
- 9:56Debugging at Code Level
- 12:30Debugging in Elixir
- 13:28IEX Debugging
- 15:24Timeouts
- 16:45IoInspect
- 19:26Convenience Macro
- 22:00Overwrite def
- 22:42Using macro
- 23:44Safe override
- 24:46Function transformation
- 25:42Simplified implementation
- 26:16The line thing
- 27:02The next line
- 28:03The pry macro
- 29:29Next Helper
- 30:03Obstacles
- 31:19Macro Expansion
- 32:28Conclusion
- 33:39Resources
- 34:23Questions
related talks
39mPainless Test Driven Development with Elixir and Phoenix
38mTesting with Elixir/Erlang
29mFilling the Knowledge Gap: Debugging Edition
41mDebugger Driven Developement with Pry
06mLightning talk - Parallel static analysis in Elixir
37mDebugging Without Borders
43mDebug Like a Scientist!
38mChemanalysis: Dialyzing Elixir
