RAM and CPU usage measuring

How can I measure RAM and CPU of my Phoenix or Elixir application? How can I also measure how much BEAM uses and how much an application itself?

1 Like

Erlang has the :etop-module. It is very similar to the tool top from the linux world. It can help you to discover some of those metrics.

It gives you an overview of ressource usage per process, so you have to know by yourself which process belongs to which application. Also it only gives you a “view of the moment”.

I’m not aware of other problems which would give you overview of the internal ressource usage of a node.

To actually find out how your operating system sees the ressource usage of the BEAM VM and everything in it, just use the usual tools like htop or top (or process manager/resource monitor when on windows).

3 Likes

and by the standard linux tools instead of etop-module?

As I said, the standard linux tools can give you an birdlike overview of the BEAM. If you want to observe how it looks internally, you have to use BEAM tooling. Linux can only see the BEAM (OS) process, but it can’t make any assumption about its internals. From linux point of view, its not different to a libreoffice, cat or even your favorite first person shooter…

1 Like