44
44
-export([get_load/1, get_disks/1]).
48
{loadErlNodeName, loadSystemTotalMemory, loadSystemUsedMemory,
49
loadLargestErlProcess, loadLargestErlProcessUsedMemory,
50
loadCpuLoad, loadCpuLoad5, loadCpuLoad15}).
49
loadSystemTotalMemory,
51
loadLargestErlProcess,
52
loadLargestErlProcessUsedMemory,
57
loadSystemTotalMemory64,
58
loadSystemUsedMemory64,
59
loadLargestErlProcessUsedMemory64}).
53
62
{key, diskDescr, diskKBytes, diskCapacity}).
168
177
%%% Exported for internal use via rpc
169
178
%%%========================================================================
170
179
get_load(Node) ->
171
case memsup:get_memory_data() of
172
{Total, Allocated, {Pid, PidAllocated}} ->
173
#loadTable{loadErlNodeName = atom_to_list(Node),
174
loadSystemTotalMemory = Total,
175
loadSystemUsedMemory = Allocated,
176
loadLargestErlProcess = pid_to_str(Pid),
177
loadLargestErlProcessUsedMemory = PidAllocated,
178
loadCpuLoad = get_cpu_load(avg1),
179
loadCpuLoad5 = get_cpu_load(avg5),
180
loadCpuLoad15 = get_cpu_load(avg15)};
181
{Total, Allocated, undefined} ->
182
#loadTable{loadErlNodeName = atom_to_list(Node),
183
loadSystemTotalMemory = Total,
184
loadSystemUsedMemory = Allocated,
185
loadLargestErlProcess = "undefined",
186
loadLargestErlProcessUsedMemory = 0,
187
loadCpuLoad = get_cpu_load(avg1),
188
loadCpuLoad5 = get_cpu_load(avg5),
189
loadCpuLoad15 = get_cpu_load(avg15)}
180
{Total, Allocated, PidString, PidAllocated} = case memsup:get_memory_data() of
181
{MemTot, MemAlloc, undefined} -> {MemTot, MemAlloc, "undefined", 0};
182
{MemTot, MemAlloc, {Pid, PidMem}} -> {MemTot, MemAlloc, pid_to_str(Pid), PidMem}
184
OsWordsize = case memsup:get_os_wordsize() of
185
WS when is_integer(WS) -> WS;
189
loadErlNodeName = atom_to_list(Node),
190
loadSystemTotalMemory = mask_int32(Total),
191
loadSystemUsedMemory = mask_int32(Allocated),
192
loadLargestErlProcess = PidString,
193
loadLargestErlProcessUsedMemory = mask_int32(PidAllocated),
194
loadCpuLoad = get_cpu_load(avg1),
195
loadCpuLoad5 = get_cpu_load(avg5),
196
loadCpuLoad15 = get_cpu_load(avg15),
197
loadOsWordsize = OsWordsize,
198
loadSystemTotalMemory64 = Total,
199
loadSystemUsedMemory64 = Allocated,
200
loadLargestErlProcessUsedMemory64 = PidAllocated
203
mask_int32(Value) -> Value band ((1 bsl 32) - 1).
192
205
get_disks(NodeId) ->