Include "running" in the queue length
[tools/testlab/major.git] / tsp / watchers / watch_target_queues.sh
1 #!/bin/sh
2
3 # Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved
4 #
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
8 #
9 #     http://www.apache.org/licenses/LICENSE-2.0
10 #
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
16
17 # Author: Aleksander Mistewicz <a.mistewicz@samsung.com>
18 export TSP_DIR="$(CDPATH='' cd -- "$(dirname -- "$0")" && pwd -P)/.."
19
20 . "${TSP_DIR}/common.sh"
21
22 TIMES_NAME="tsrun_time"
23 TIMES="$(mktemp)"
24 {
25     echo "# HELP $TIMES_NAME Execution time of the most recent command"
26     echo "# TYPE $TIMES_NAME gauge"
27 } > "$TIMES"
28
29 for ltarget in $TARGET_LIST
30 do
31     target="${ltarget#*-}"
32     COUNT="$(tsrun_target "${target}" | grep "queued\|running" | wc -l)"
33     # Report queue length
34     post_prom "tsrun_queued_${target}" "$COUNT" "Length of ${target} queue"
35     TIME="$(tsrun_target "${target}" -i | grep -o "[0-9]\+\.[0-9]\+")"
36     echo "${TIMES_NAME}{target=\"${ltarget}\"} $TIME" >> "$TIMES" #FIXME use real target instead of l-target
37 done
38
39 mv "$TIMES" "$PROM_DIR/tsrun_times.prom"