-
Notifications
You must be signed in to change notification settings - Fork 40
Can't analyze Canillita #29
Comments
Does canillita start a lot of workers under some supervisor? That's my first guess, because one of the plugins timed out while querying tracer process for children of one of the supervisors. |
Or is that machine under heavy load, by not responding within the default of 5000ms ? |
Neither of those. (canillita@127.0.0.1)4> [begin timer:sleep(5000), length(processes()) end || _ <- lists:seq(1, 10)].
[132,132,132,132,132,132,132,132,132,132] (no processes created for about a minute) And the machine is my computer… super quiet and peaceful, I promise :) |
you can certainly try it in your computers as well… canillita is open-source |
Well, i see there's missing tests! i might volunteer later ;) |
It looks like |
I suspect this line might be a problem. Canillita doesn't start its top level supervisor, it returns its own PID in In this case I'd recommend adding dumb top supervisor to canillita, if that wouldn't interfere with its design. You can build erlangpl without failing plugin though. Clone the repo and follow these steps:
This should build |
We're working on the plugin system which would allow builidng |
I wouldn't call myself an authority when it comes to OTP, but in such cases I always start dumb dangling supervisor. Of course we could check if returned PID is not the same as application master's PID, but even Erlang Manual mentions that I'm trying to run observer with canillita to se how it handles such cases. |
Good points, @arkgil. I'm looking for the right way to solve this issue with my colleagues. I agree that returning |
Setting up dummy supervisor isn't the most OTPish way too. In the end, why would we need one if there is nothing to supervise? |
Would it help in anyway to be a bit more rebust? |
We might check if pid returned by I'd be very happy to fix this, so if you have any idea, please let us know here 🙂 |
Sure, any suggestions? On the other hand I'm glad we dscovered this issue in Canillita. It manifests in obscure way, but indicates lack of OTP compliance. |
When I try to analyze inaka/canillita, I found an error.
These are the steps I follow:
$ git clone https://github.com/inaka/canillita.git $ cd canillita $ make rel $ _rel/canillita/bin/canillita console
…then, in another shell…
…where I get the following output…
but once I open my browser at localhost:8000, I get the following error report in that console:
The text was updated successfully, but these errors were encountered: