Start all test sensors with explicit parameters
[khatus.git] / x4 / sanity_check
1 #! /bin/sh
2
3 set -e
4
5 . ./bin/khatus_x4_lib_common_sensor.sh
6
7 dir="${prefix}/${host}"
8
9 sensors_kill_all() {
10 for pid_file in $(find $dir -type f -name pid)
11 do
12 kill -9 $(cat $pid_file) || true
13 rm $pid_file
14 done
15 pkill khatus_x4_sensor || true
16 }
17
18 sensors_fork_all() {
19 ./bin/khatus_x4_sensor_datetime -i 1 &
20 ./bin/khatus_x4_sensor_bluetooth -i 1 &
21 ./bin/khatus_x4_sensor_mpd -i 1 &
22 ./bin/khatus_x4_sensor_energy -i 1 &
23 ./bin/khatus_x4_sensor_memory -i 1 &
24 ./bin/khatus_x4_sensor_loadavg -i 1 &
25 ./bin/khatus_x4_sensor_temp -i 1 -- -z 0 &
26 ./bin/khatus_x4_sensor_disk -i 1 -- -f / &
27 }
28
29 sensor_read_one() {
30 if test -f "$1"
31 then
32 cat "$1"
33 else
34 printf '%s\n' '--'
35 fi
36 }
37
38 sensors_read_all() {
39 while :
40 do
41 battery_state="$(sensor_read_one ${dir}/khatus_x4_sensor_energy/out/battery_state)"
42 battery_percentage="$(sensor_read_one ${dir}/khatus_x4_sensor_energy/out/battery_percentage)"
43 bluetooth_controllers="$(sensor_read_one ${dir}/khatus_x4_sensor_bluetooth/out/count_powered_controllers)"
44 bluetooth_devices="$(sensor_read_one ${dir}/khatus_x4_sensor_bluetooth/out/count_connected_devices)"
45 datetime="$(sensor_read_one ${dir}/khatus_x4_sensor_datetime/out/datetime)"
46 mpd="$(sensor_read_one ${dir}/khatus_x4_sensor_mpd/out/status)"
47 mem="$(sensor_read_one ${dir}/khatus_x4_sensor_memory/out/percent_used)"
48 load="$(sensor_read_one ${dir}/khatus_x4_sensor_loadavg/out/load_avg_1min)"
49 temp="$(sensor_read_one ${dir}/khatus_x4_sensor_temp/out/thermal_zone0)"
50 disk="$(sensor_read_one ${dir}/khatus_x4_sensor_disk/out/disk_usage_percentage)"
51 echo "E[${battery_state} ${battery_percentage}] M:${mem}% L:${load} T:${temp}°C D:${disk}% [${mpd}] [$bluetooth_controllers $bluetooth_devices] ${datetime}"
52 sleep 1
53 done
54 }
55
56 main() {
57 sensors_kill_all
58 sensors_fork_all
59 sensors_read_all
60 }
61
62 main
This page took 0.064999 seconds and 4 git commands to generate.