PromEx.Plugins.Beam (PromEx v0.1.6-alpha) View Source

Telemetry metrics for the BEAM.

This plugin captures metrics regarding the Erlang Virtual Machine (i.e the BEAM). Specifically, it captures metrics regarding the CPU topology, system limits, VM feature support, scheduler information, memory utilization, distribution traffic, and other internal metrics.

This plugin supports the following options:

  • poll_rate: This is option is OPTIONAL and is the rate at which poll metrics are refreshed (default is 5 seconds).

This plugin exposes the following metric groups:

  • :beam_memory_polling_metrics
  • :beam_cpu_topology_manual_metrics
  • :beam_system_limits_manual_metrics
  • :beam_system_info_manual_metrics
  • :beam_scheduler_manual_metrics

To use plugin in your application, add the following to your application supervision tree:

def start(_type, _args) do
  children = [
    ...
    {
      PromEx,
      plugins: [
        PromEx.Plugins.Beam
        ...
      ],
      delay_manual_start: :no_delay
    }
  ]

  opts = [strategy: :one_for_one, name: WebApp.Supervisor]
  Supervisor.start_link(children, opts)
end

This plugin exposes manual metrics so be sure to configure the PromEx :delay_manual_start as necessary.