Merge "add test tool for check launching time" into tizen
[platform/core/dotnet/launcher.git] / tools / timestamp.sh
1 #!/bin/bash
2
3 if [[ -z $1 ]] || [[ -z $2 ]]
4 then
5         echo "[!] Execute [./performance_test.sh]"
6         exit 0
7 fi
8
9 LOG_FILE=$1
10 RESULT_FILE=$2
11
12 IS_START=false
13 echo -e "T(ms)\tAPP ID" | tee -a $RESULT_FILE
14 while inotifywait -qqre modify "$LOG_FILE"; do
15     GET_LOG="$(tail -1 $LOG_FILE)"
16     GET_LOG=$(echo $GET_LOG | sed "s/(/ /g")
17     if [[ $GET_LOG == *"app_request_to_launchpad_for_uid"* ]];
18     then
19         APP_NAME=$(echo "$GET_LOG" | grep app_request_to_launchpad_for_uid | awk '{print $13}')
20         APP_NAME=$(echo $APP_NAME | tr -d '\r')
21         IS_DIGIT=$(echo $APP_NAME | sed "s/[^0-9]*//g")
22
23         if [[ $IS_DIGIT != $APP_NAME ]];
24         then
25             START_T=$(echo "$GET_LOG" | grep app_request_to_launchpad_for_uid | awk '{print $2}')
26             START_T=${START_T%%+0900}
27             START_T=$(echo $START_T | sed "s/:/./g")
28             IS_START=true
29         fi
30     fi
31
32     if [[ $GET_LOG == *APP_CORE* ]] && [ "$IS_START" = true ]
33     then
34         END_T=$(echo "$GET_LOG" | grep SHOW | awk '{print $2}')
35         END_T=${END_T%%+0900}
36         END_T=$(echo $END_T | sed "s/:/./g")
37
38         IFS=. read -ra START_ARR <<<"$START_T"
39         START_MS=0
40         : $[ START_MS = 10#$START_MS + 10#${START_ARR[0]} * 3600 * 1000 ]
41         : $[ START_MS = 10#$START_MS + 10#${START_ARR[1]} * 60 * 1000 ]
42         : $[ START_MS = 10#$START_MS + 10#${START_ARR[2]} * 1000 ]
43         : $[ START_MS = 10#$START_MS + 10#${START_ARR[3]} ]
44
45         IFS=. read -ra END_ARR <<<"$END_T"
46         END_MS=0
47         : $[ END_MS = 10#$END_MS + 10#${END_ARR[0]} * 3600 * 1000 ]
48         : $[ END_MS = 10#$END_MS + 10#${END_ARR[1]} * 60 * 1000 ]
49         : $[ END_MS = 10#$END_MS + 10#${END_ARR[2]} * 1000 ]
50         : $[ END_MS = 10#$END_MS + 10#${END_ARR[3]} ]
51
52         : $[ DIFF_MS = $END_MS - $START_MS ]
53         echo -e "$DIFF_MS\t$APP_NAME" | tee -a $RESULT_FILE
54         IS_START=false
55     fi
56 done