peoj
Debugging supervision tree
I’ve built a supervision tree and I’m testing it out using observer (via :observer.start()).
I’m finding that performing Process.exit(one_of_the_child_pids, :kill) is unexpectedly also causing the supervisor itself to restart. Assuming that the observer processes GUI is giving me a complete picture of process links, which I assume it must be, I don’t see any way that this could be the case. I’ve experimented with passing silly values to max_restarts in the Supervisor but ultimately I’m stabbing in the dark here.
I’m absolutely certain this is down to some lack of understanding on my part. My question is; what’s the best way of determining why a supervisor has exited and/or debugging this sort of problem? Are there any good debug tools available?
Most Liked
peoj
Thanks @dimitarvp . I concur but I haven’t had a lightbulb moment. Maybe there are some tools / tips / tricks for tracing supervision tree events that I’m not aware of?
Here’s the library in question: elixir-mongodb-driver/mongo.ex at master · zookzook/elixir-mongodb-driver · GitHub







