Erlang observer is a great tool that helps you to get insights into your running BEAM node or a crash dump file of crashed BEAM node. It is written in Erlang language and has GUI. That last fact was a little bit of magic for me, which means I did not know how Observer GUI was implemented. Yesterday, we had a third Zagreb Elixir Meetup, a great opportunity to exchange Elixir and Erlang ideas, issues, and knowledge with fellow Elixir code wranglers.
As I am using Observer in my daily work to investigate how hungry are my applications for resources, from day one I noticed that Observer on my Mac was “sluggish”. I needed to switch between tabs in order to refresh Observer UI. There was a workaround, so I did not bother to investigate the root cause of sluggish symptoms.
At the meetup, I gave a talk about Observer and Iex features that I use. The audience saw my sluggish Observer and noted that they do not have such an issue. It was time to find the root cause.
Google search pointed me to a possible root cause, and that was the outdated
wxwidgets library. I updated it with brew (as I am on Mac) with
brew update and
brew upgrade and after that I reinstalled erlang with asdf
asdf uninstall erlang 24.2 and
asdf install erlang 126.96.36.199
Note that erlang was also updated to the latest version 24. The reason was compatibility with the latest
No more sluggish
observer for me!