d1c2bf5e7c
This new service periodically tracks the file open in the system. Closes-Bug: #1995502 Change-Id: I02e097fef07655ff571af9f35bf258b2ed975098
59 lines
1.5 KiB
Bash
59 lines
1.5 KiB
Bash
#!/bin/bash
|
|
#
|
|
# lib/dstat
|
|
# Functions to start and stop dstat
|
|
|
|
# Dependencies:
|
|
#
|
|
# - ``functions`` file
|
|
|
|
# ``stack.sh`` calls the entry points in this order:
|
|
#
|
|
# - install_dstat
|
|
# - start_dstat
|
|
# - stop_dstat
|
|
|
|
# Save trace setting
|
|
_XTRACE_DSTAT=$(set +o | grep xtrace)
|
|
set +o xtrace
|
|
|
|
# install_dstat() - Install prerequisites for dstat services
|
|
function install_dstat {
|
|
if is_service_enabled memory_tracker; then
|
|
# Install python libraries required by tools/mlock_report.py
|
|
pip_install_gr psutil
|
|
fi
|
|
}
|
|
|
|
# start_dstat() - Start running processes
|
|
function start_dstat {
|
|
# A better kind of sysstat, with the top process per time slice
|
|
run_process dstat "$TOP_DIR/tools/dstat.sh $LOGDIR"
|
|
|
|
# To enable memory_tracker add:
|
|
# enable_service memory_tracker
|
|
# to your localrc
|
|
run_process memory_tracker "$TOP_DIR/tools/memory_tracker.sh" "" "root"
|
|
|
|
# TODO(jh): Fail when using the old service name otherwise consumers might
|
|
# never notice that is has been removed.
|
|
if is_service_enabled peakmem_tracker; then
|
|
die $LINENO "The peakmem_tracker service has been removed, use memory_tracker instead"
|
|
fi
|
|
|
|
# To enable file_tracker add:
|
|
# enable_service file_tracker
|
|
# to your localrc
|
|
run_process file_tracker "$TOP_DIR/tools/file_tracker.sh"
|
|
}
|
|
|
|
# stop_dstat() stop dstat process
|
|
function stop_dstat {
|
|
stop_process dstat
|
|
stop_process memory_tracker
|
|
stop_process file_tracker
|
|
}
|
|
|
|
# Restore xtrace
|
|
$_XTRACE_DSTAT
|