diff --git a/lib/realtime/monitoring/erl_sys_mon.ex b/lib/realtime/monitoring/erl_sys_mon.ex index 58975a04e..32a4f857b 100644 --- a/lib/realtime/monitoring/erl_sys_mon.ex +++ b/lib/realtime/monitoring/erl_sys_mon.ex @@ -7,17 +7,20 @@ defmodule Realtime.ErlSysMon do require Logger - @defults [ + @defaults [ :busy_dist_port, :busy_port, {:long_gc, 250}, {:long_schedule, 100}, {:long_message_queue, {0, 1_000}} ] - def start_link(args \\ @defults), do: GenServer.start_link(__MODULE__, args) + + def start_link(args), do: GenServer.start_link(__MODULE__, args) def init(args) do - :erlang.system_monitor(self(), args) + config = Keyword.get(args, :config, @defaults) + :erlang.system_monitor(self(), config) + {:ok, []} end diff --git a/mix.exs b/mix.exs index 1974b462d..bdb3ca508 100644 --- a/mix.exs +++ b/mix.exs @@ -4,7 +4,7 @@ defmodule Realtime.MixProject do def project do [ app: :realtime, - version: "2.56.7", + version: "2.56.8", elixir: "~> 1.17.3", elixirc_paths: elixirc_paths(Mix.env()), start_permanent: Mix.env() == :prod, diff --git a/test/realtime/monitoring/erl_sys_mon_test.exs b/test/realtime/monitoring/erl_sys_mon_test.exs index 8c1dd8821..cb832c760 100644 --- a/test/realtime/monitoring/erl_sys_mon_test.exs +++ b/test/realtime/monitoring/erl_sys_mon_test.exs @@ -1,11 +1,11 @@ -defmodule Realtime.ErlSysMonTest do +defmodule Realtime.Monitoring.ErlSysMonTest do use ExUnit.Case, async: true import ExUnit.CaptureLog alias Realtime.ErlSysMon describe "system monitoring" do test "logs system monitor events" do - start_supervised!({ErlSysMon, [{:long_message_queue, {1, 10}}]}) + start_supervised!({ErlSysMon, config: [{:long_message_queue, {1, 10}}]}) assert capture_log(fn -> Task.async(fn -> Enum.map(1..100_000, &send(self(), &1)) end)