summaryrefslogtreecommitdiffstats
path: root/tests/run.sh
diff options
context:
space:
mode:
authorJulien <zhang.jun3g@zte.com.cn>2016-12-27 23:28:21 +0800
committerJulien <zhang.jun3g@zte.com.cn>2017-01-12 13:49:04 +0800
commit2378f04c1b6d333c322f93e44387c6f224dffe3e (patch)
tree135664be7b3e4c1ce697d819fc8db7bb5b71a638 /tests/run.sh
parent836674ae9c96738791463940d713e88d5928f7d8 (diff)
Add more timestamps and export them for profiler
Add timestamps when mark host and vm down(T03/T04). Update the sequence for host down and vm error Export more time tags for profiler: 1. Calculate and export T01,T03,T04 timestamps 2. Use regex to get time from log instead fixed column 3. Fix var usage without a '$' info: merge gerrit ticket 26551 into 26531. JIRA: DOCTOR-88 Change-Id: I3e6ccba667f470b4a00219f1e9830bb0da3d4ae5 Signed-off-by: Julien <zhang.jun3g@zte.com.cn>
Diffstat (limited to 'tests/run.sh')
-rwxr-xr-xtests/run.sh28
1 files changed, 22 insertions, 6 deletions
diff --git a/tests/run.sh b/tests/run.sh
index 1b21f09f..206f6a40 100755
--- a/tests/run.sh
+++ b/tests/run.sh
@@ -27,6 +27,7 @@ DOCTOR_PW=doctor
DOCTOR_PROJECT=doctor
#TODO: change back to `_member_` when JIRA DOCTOR-55 is done
DOCTOR_ROLE=admin
+PROFILER_TYPE=${PROFILER_TYPE:-none}
TOP_DIR=$(cd $(dirname "$0") && pwd)
@@ -248,21 +249,36 @@ END_TXT
}
profile_performance_poc() {
- total=`python -c "print(int(($notified-$detected)*1000))"`
-
+ triggered=$(grep "^doctor set host down at" disable_network.log |\
+ sed -e "s/^.* at //")
+ vmdown=$(grep "doctor mark vm.* error at" inspector.log |tail -n 1 |\
+ sed -e "s/^.* at //")
+ hostdown=$(grep "doctor mark host.* down at" inspector.log |\
+ sed -e "s/^.* at //")
+
+ #calculate the relative interval to triggered(T00)
export DOCTOR_PROFILER_T00=0
- export DOCTOR_PROFILER_T09=$((total))
+ export DOCTOR_PROFILER_T01=$(echo "($detected-$triggered)*1000/1" |bc)
+ export DOCTOR_PROFILER_T03=$(echo "($vmdown-$triggered)*1000/1" |bc)
+ export DOCTOR_PROFILER_T04=$(echo "($hostdown-$triggered)*1000/1" |bc)
+ export DOCTOR_PROFILER_T09=$(echo "($notified-$triggered)*1000/1" |bc)
+
python profiler-poc.py
}
calculate_notification_time() {
- detected=$(grep "doctor monitor detected at" monitor.log | awk '{print $10}')
- notified=$(grep "doctor consumer notified at" consumer.log | awk '{print $10}')
if ! grep -q "doctor consumer notified at" consumer.log ; then
die $LINENO "Consumer hasn't received fault notification."
fi
- if [[ PROFILER == 'poc' ]]; then
+ #keep 'at' as the last keyword just before the value, and
+ #use regex to get value instead of the fixed column
+ detected=$(grep "doctor monitor detected at" monitor.log |\
+ sed -e "s/^.* at //")
+ notified=$(grep "doctor consumer notified at" consumer.log |\
+ sed -e "s/^.* at //")
+
+ if [[ "$PROFILER_TYPE" == "poc" ]]; then
profile_performance_poc
fi