Newer Older
75 lines | 2.415kb
supervision cloud
seb authored on 2019-12-19
1
# vim: ft=sh
2

            
3
function nginx () {
4
    nc -zw2 127.0.0.1 80 || echo "injoignable sur port 80 local"
5
    nc -zw2 paris12.pcf.fr 80 || echo "injoignable sur port 80 distant"
6
    nc -zw2 paris12.pcf.fr 443 || echo "injoignable sur port 443 distant"
7
}
8

            
9
function core_temp () {
10
    local min=60
11
    local level=("warning" "severe" "danger!")
12
    local step=$(( $(</sys/class/thermal/thermal_zone0/temp) - (min * 1000) ))
13
    if test $step -gt 1; then
14
#    if test $step -gt 5000; then # en été il fait plus chaud, c'est normal que ça monte à 60° régulièrement
15
        step=$((step / 10000))
16
        test $step -le 2 || step=2
17
        echo "${level[step]}: température > $((min + step * 10))°"
18
    fi
19
}
20

            
21
function core_alim () {
22
    eval $(/opt/vc/bin/vcgencmd measure_volts core)
23
    volt_fmt=${volt/\.}
24
    volt_fmt=${volt_fmt/V}
25
    test $volt_fmt -lt 12000 -o $volt_fmt -gt 15000 && echo "$volt"
26
}
27

            
gère swap et cache
Sébastien MARQUE authored on 2021-11-14
28
function clean_swap () {
29
    _turn 2 || return
libère le cache plus réguliè...
seb authored on 2022-01-08
30
    echo 1 > /proc/sys/vm/drop_caches
fix bad return code
seb authored on 2022-08-15
31
    if LANG=C free -m | awk '
gère swap et cache
Sébastien MARQUE authored on 2021-11-14
32
        /^Swap:/ {
33
            used = $3
34
        }
35
        END {
fix bad return code
seb authored on 2022-08-15
36
            bash_exit_code = !(used > 31)
37
            exit bash_exit_code
gère swap et cache
Sébastien MARQUE authored on 2021-11-14
38
        }
39
    '; then
40
        systemctl stop dphys-swapfile \
41
        && systemctl stop zram        \
42
        && systemctl start zram       \
43
        && systemctl start dphys-swapfile \
44
        || echo 'erreur'
45
    fi
46
}
47

            
supervision cloud
seb authored on 2019-12-19
48
function mem_pressure () {
49
    local meminfo=($(</proc/meminfo))
50
    local level=(danger severe warning)
51
    local margin=30000
52
    for ((i=0; i<${#meminfo[@]}; i+=3)); do
53
        test ${meminfo[i]} == 'MemAvailable:' && break
54
    done
55
    meminfo[i+2]=$(( ( ${meminfo[i+1]} - $margin ) / 100000 ))
56
    test ${meminfo[i+2]} -ge ${#range[@]} || echo "${level[${meminfo[i+2]}]}: available ${meminfo[i+1]}kB"
57
}
alerte sur toner black
seb authored on 2021-01-01
58

            
59
function printer () {
60
    _turn 24 || return
61
    local min=20
62
    local level=(extreme danger warning info)
63
    local printer=192.168.1.54
64
    local prtMarkerSuppliesMaxCapacity=1.3.6.1.2.1.43.11.1.1.8.1
65
    local prtMarkerSuppliesLevel=1.3.6.1.2.1.43.11.1.1.9.1
66
    local left=$(snmpget -v 1 -c public $printer ${prtMarkerSuppliesLevel}.4)
67
    local full=$(snmpget -v 1 -c public $printer ${prtMarkerSuppliesMaxCapacity}.4)
68

            
69
    if test ${full#*:} -ne 0; then
70
        local step=$(((${left#*:}*100/${full#*:})/5))
71
        if test $step -le ${#level[@]}; then
72
            echo "${level[$step]} toner black"
73
        fi
74
    fi
75
}