Erlang Performance Lab

Heh, I never check the website for something when there is a github repo for it… ^.^;

Got it, the escript works, the make build-ui was ‘still’ going so I killed it.

Running it on my test server crashes a few seconds after it connects:

=ERROR REPORT==== 5-Apr-2017::14:26:45 ===
** Generic server epl_st terminating
** Last message in was {data,
                           {'devserver@127.0.0.1',{1491,424005,703000}},
                           [{process_count,337},
                            {memory_total,61696912},
                            {spawn,[]},
                            {exit,[]},
                            {send,
                                [{{#Port<6777.19116>,<6777.421.0>},15,0},
                                 {{#Port<6777.19117>,<6777.420.0>},15,0},
                                 {{#Port<6777.19119>,<6777.419.0>},15,0},
                                 {{#Port<6777.19120>,<6777.418.0>},15,0},
                                 {{#Port<6777.19121>,<6777.417.0>},15,0},
                                 {{#Port<6777.19123>,<6777.416.0>},15,0},
                                 {{#Port<6777.19124>,<6777.415.0>},15,0},
                                 {{#Port<6777.19126>,<6777.414.0>},15,0},
                                 {{#Port<6777.19127>,<6777.413.0>},15,0},
                                 {{#Port<6777.19128>,<6777.412.0>},15,0},
                                 {{#Port<6777.23262>,<6777.567.0>},2,0},
                                 {{<6777.45.0>,<6777.47.0>},0,1},
                                 {{<6777.45.0>,<6777.567.0>},1,0},
                                 {{<6777.567.0>,<6777.572.0>},1,0}]},
                            {send_self,[]},
                            {'receive',
                                [{#Port<6777.19116>,10,130},
                                 {#Port<6777.19117>,10,130},
                                 {#Port<6777.19119>,10,130},
                                 {#Port<6777.19120>,10,130},
                                 {#Port<6777.19121>,10,130},
                                 {#Port<6777.19123>,10,130},
                                 {#Port<6777.19124>,10,130},
                                 {#Port<6777.19126>,10,130},
                                 {#Port<6777.19127>,10,130},
                                 {#Port<6777.19128>,10,130},
                                 {#Port<6777.23262>,2,24},
                                 {<6777.45.0>,1,0},
                                 {<6777.47.0>,1,0},
                                 {<6777.274.0>,5,0},
                                 {<6777.412.0>,15,75},
                                 {<6777.413.0>,15,75},
                                 {<6777.414.0>,15,75},
                                 {<6777.415.0>,15,75},
                                 {<6777.416.0>,15,75},
                                 {<6777.417.0>,15,75},
                                 {<6777.418.0>,15,75},
                                 {<6777.419.0>,15,75},
                                 {<6777.420.0>,15,75},
                                 {<6777.421.0>,15,75},
                                 {<6777.543.0>,3,0},
                                 {<6777.546.0>,3,0},
                                 {<6777.549.0>,4,0},
                                 {<6777.567.0>,2,6}]},
                            {trace,[]}]}
** When Server state == {state,[]}
** Reason for termination ==
** {function_clause,
       [{lists,map,
            [#Fun<epl_st.2.5273273>,
             {'EXIT',
                 {{#{'__exception__' => true,
                     '__struct__' => 'Elixir.RuntimeError',
                     message => <<"attempted to call GenServer :wobserver_metrics but no handle_call/3 clause was provided">>},
                   [{'Elixir.Agent.Server','handle_call (overridable 1)',3,
                        [{file,"lib/gen_server.ex"},{line,559}]},
                    {gen_server,try_handle_call,4,
                        [{file,"gen_server.erl"},{line,615}]},
                    {gen_server,handle_msg,5,
                        [{file,"gen_server.erl"},{line,647}]},
                    {proc_lib,init_p_do_apply,3,
                        [{file,"proc_lib.erl"},{line,247}]}]},
                  {gen_server,call,[<6777.404.0>,which_children,infinity]}}}],
            [{file,"lists.erl"},{line,1238}]},
        {epl_st,generate_sup_tree,1,[{file,"src/epl_st.erl"},{line,105}]},
        {epl_st,'-handle_info/2-fun-0-',2,[{file,"src/epl_st.erl"},{line,76}]},
        {lists,foldl,3,[{file,"lists.erl"},{line,1263}]},
        {epl_st,handle_info,2,[{file,"src/epl_st.erl"},{line,75}]},
        {gen_server,try_dispatch,4,[{file,"gen_server.erl"},{line,601}]},
        {gen_server,handle_msg,5,[{file,"gen_server.erl"},{line,667}]},
        {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,247}]}]}

=INFO REPORT==== 5-Apr-2017::14:26:45 ===
    application: epl_st
    exited: shutdown
    type: temporary

So apparently it crashes if the wobserver is running on the remote node. Connecting it to a different test server seems to work, although as I’m clicking around on the supervisor tree page I get a few errors like:

=ERROR REPORT==== 5-Apr-2017::14:23:59 ===
** Cowboy handler epl_st_EPL terminating in websocket_handle/3
   for the reason error:badarg
** Message was {text,<<"<6777.435.0>">>}
** Options were []
** Handler state was undefined_state

Quite pretty and responsive though! Any chance of some text labels on the supervisor tree graph?