I am trying to generate a flame graph for my Absinthe application and I am having a hard time understanding the whole Absinthe flow and how to make it work.
I am using the eflambe library and it contains a capture function where I have to specify the module and function that I want to trace.
Can someone help me understand the entry point of an Absinthe request call and a module that I can use to trace the whole execution?
NOTE:
I don’t want to benchmark only the resolver call because Absinthe is doing a lot of more work after that and that’s what I want to see in a flame graph.
I realized that having nested fields might slow down things and this is what I am trying to see and improve.
When I use Absinthe.Plug.GraphiQL call function, it works. So I don’t think it’s an external module issue. Are we calling that even using the GraphiQL plug?
Do you know any other way where I can generate a flame graph for an Absinthe request?
I am not familiar with that library, sorry. Your theory about whether it works with external modules though is pretty easy to test, just call a simple function in another library and see what happens.