integ/tools/engtools/hostdata-collectors/scripts/iostat.sh
Sun Austin 847cf1e92f Fix linters issue E002 and E003 and linters check (none-voting)
E002 Tab indents
E003 Indent not multiple of 4

Story: 2003366
Task: 24424

Change-Id: Ie063ccfe346489f08c4752adaa344f5919db0378
Signed-off-by: Sun Austin <austin.sun@intel.com>
2018-08-31 04:08:52 +00:00

50 lines
1.2 KiB
Bash

#!/bin/bash
# Usage: iostat.sh [-p <period_mins>] [-i <interval_seconds>] [-c <cpulist>] [-h]
TOOLBIN=$(dirname $0)
# Initialize tools environment variables, and define common utility functions
. ${TOOLBIN}/engtools_util.sh
tools_init
if [ $? -ne 0 ]; then
echo "FATAL, tools_init - could not setup environment"
exit $?
fi
# Enable use of INTERVAL_SEC sample interval
OPT_USE_INTERVALS=1
IOSTAT=$( which iostat 2>/dev/null )
if [ $? -ne 0 ]; then
print_separator
WARNLOG "iostat not available"
tools_cleanup 0
fi
# MAIN Program:
#-------------------------------------------------------------------------------
# Parse input options
tools_parse_options "${@}"
# Set affinity of current script
CPULIST=""
set_affinity ${CPULIST}
LOG "collecting ${TOOLNAME} for ${PERIOD_MIN} minutes, with ${INTERVAL_SEC} second sample intervals."
# Print tools generic tools header
tools_header
# Calculate number of sample repeats based on overall interval and sampling interval
((REPEATS = PERIOD_MIN * 60 / INTERVAL_SEC))
((REP = REPEATS + 1))
# Execute tool for specified duration
CMD="${IOSTAT} -k -x -t ${INTERVAL_SEC} ${REP}"
#LOG "CMD: ${CMD}"
${CMD}
LOG "done"
# normal program exit
tools_cleanup 0
exit 0