X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;f=src%2Fbeam_stats_state.erl;h=d514f95f8a98342299d622c55c5ae0b091bed9b7;hb=aa4143aa361a537ab11a8145846bd4ddfad1f56e;hp=7c41fc01820e3ed393b07e539b587fb9ba3e4a7b;hpb=8c0788b23299b3d09f255cdfb1932f10da3545a2;p=beam_stats.git diff --git a/src/beam_stats_state.erl b/src/beam_stats_state.erl index 7c41fc0..d514f95 100644 --- a/src/beam_stats_state.erl +++ b/src/beam_stats_state.erl @@ -1,6 +1,8 @@ -module(beam_stats_state). -include("include/beam_stats.hrl"). +-include("include/beam_stats_process.hrl"). +-include("include/beam_stats_processes.hrl"). -export_type( [ t/0 @@ -14,6 +16,7 @@ -record(snapshots, { memory :: [{atom(), non_neg_integer()}] + , processes :: beam_stats_processes:t() , run_queue :: non_neg_integer() , ets :: beam_stats_ets:t() }). @@ -61,8 +64,8 @@ new() -> t(). new(#totals{}=TotalsPrevious) -> ?T - { timestamp = os:timestamp() - , node_id = erlang:node() + { timestamp = beam_stats_source:os_timestamp() + , node_id = beam_stats_source:erlang_node() , snapshots = snapshots_new() , deltas = deltas_new() , totals_previous = TotalsPrevious @@ -83,6 +86,7 @@ export( , snapshots = #snapshots { memory = Memory + , processes = Processes , run_queue = RunQueue , ets = ETS } @@ -114,17 +118,19 @@ export( , reductions = Reductions , run_queue = RunQueue , ets = ETS + , processes = Processes }. snapshots_new() -> #snapshots - { memory = erlang:memory() - , run_queue = erlang:statistics(run_queue) + { memory = beam_stats_source:erlang_memory() + , processes = beam_stats_processes:collect() + , run_queue = beam_stats_source:erlang_statistics(run_queue) , ets = beam_stats_ets:collect() }. deltas_new() -> - {_ReductionsTotal, ReductionsDelta} = erlang:statistics(reductions), + {_ReductionsTotal, ReductionsDelta} = beam_stats_source:erlang_statistics(reductions), #deltas { reductions = ReductionsDelta }. @@ -132,8 +138,8 @@ deltas_new() -> totals_new() -> { {input , IOBytesIn} , {output , IOBytesOut} - } = erlang:statistics(io), - {ContextSwitches, 0} = erlang:statistics(context_switches), + } = beam_stats_source:erlang_statistics(io), + {ContextSwitches, 0} = beam_stats_source:erlang_statistics(context_switches), #totals { io_bytes_in = IOBytesIn , io_bytes_out = IOBytesOut