#!/bin/bash
#
# lib/dstat
# Functions to start and stop dstat

# Dependencies:
#
# - ``functions`` file

# ``stack.sh`` calls the entry points in this order:
#
# - start_dstat
# - stop_dstat

# Save trace setting
_XTRACE_DSTAT=$(set +o | grep xtrace)
set +o xtrace

# 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"

    # remove support for the old name when it's no longer used (sometime in Queens)
    if is_service_enabled peakmem_tracker; then
        deprecated "Use of peakmem_tracker in devstack is deprecated, use memory_tracker instead"
        run_process peakmem_tracker "$TOP_DIR/tools/memory_tracker.sh" "" "root"
    fi
}

# stop_dstat() stop dstat process
function stop_dstat {
    stop_process dstat
    stop_process memory_tracker
}

# Restore xtrace
$_XTRACE_DSTAT