View Source PromEx.Plugins.Beam (PromEx v1.11.0)
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).metric_prefix: This option is OPTIONAL and is used to override the default metric prefix of[otp_app, :prom_ex, :beam]. If this changes you will also want to setbeam_metric_prefixin yourdashboard_assignsto the snakecase version of your prefix, the defaultbeam_metric_prefixis{otp_app}_prom_ex_beam.duration_unit: This is an OPTIONAL option and is aTelemetry.Metrics.time_unit(). It can be one of::second | :millisecond | :microsecond | :nanosecond. It is:millisecondby default.
This plugin exposes the following metric groups:
:beam_memory_polling_metrics:beam_internal_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 PromEx module:
defmodule MyApp.PromEx do
use PromEx, otp_app: :web_app
@impl true
def plugins do
[
...
PromEx.Plugins.Beam
]
end
@impl true
def dashboards do
[
...
{:prom_ex, "beam.json"}
]
end
endThis plugin exposes manual metrics so be sure to configure the PromEx :delay_manual_start as necessary.