diff --git a/addon/addon/server.tcl b/addon/addon/server.tcl index 77d3a9d..c83aa8b 100755 --- a/addon/addon/server.tcl +++ b/addon/addon/server.tcl @@ -34,10 +34,10 @@ proc handle_connection { channelId clientAddress clientPort } { if { [file exists /proc/net/tcp6] == 1 } { puts $channelId "<<>>" - puts $channelId "[exec cat /proc/net/tcp /proc/net/tcp6 2>/dev/null | awk { /:/ { c[$4]++; } END { for (x in c) { print x, c[x]; } } }]" + puts $channelId "[exec /usr/local/addons/check_mk_agent/waitmax -s 1 10 cat /proc/net/tcp /proc/net/tcp6 2>/dev/null | awk { /:/ { c[$4]++; } END { for (x in c) { print x, c[x]; } } }]" } else { puts $channelId "<<>>" - puts $channelId "[exec cat /proc/net/tcp 2>/dev/null | awk { /:/ { c[$4]++; } END { for (x in c) { print x, c[x]; } } }]" + puts $channelId "[exec /usr/local/addons/check_mk_agent/waitmax -s 1 10 cat /proc/net/tcp 2>/dev/null | awk { /:/ { c[$4]++; } END { for (x in c) { print x, c[x]; } } }]" } puts $channelId "<<>>" @@ -65,6 +65,14 @@ proc handle_connection { channelId clientAddress clientPort } { puts $channelId "<<>>" puts $channelId "[exec egrep ^(/dev|ubi) < /proc/mounts]" + if { [file exists /bin/stat] == 1 } { + puts $channelId "<<>>" + puts $channelId [exec sh -c {sed -n '/ nfs4\? /s/[^ ]* \([^ ]*\) .*/\1/p' >>" + puts $channelId [exec sh -c {sed -n '/ cifs\? /s/[^ ]* \([^ ]*\) .*/\1/p' >>" puts $channelId "[exec sh -c {ps ax -o user,vsz,rss,pid,args | sed -e 1d -e 's/ *\([^ ]*\) *\([^ ]*\) *\([^ ]*\) *\([^ ]*\) */(\1,0,0,00:00:00\/00:00:00,\4) /'}]" @@ -74,7 +82,7 @@ proc handle_connection { channelId clientAddress clientPort } { if { [file exists /usr/bin/ntpq] == 1 } { puts $channelId "<<>>" - puts $channelId "[exec ntpq -np | sed -e 1,2d -e {s/^\(.\)/\1 /} -e {s/^ /%/}]" + puts $channelId "[exec /usr/local/addons/check_mk_agent/waitmax 5 /usr/bin/ntpq -np | sed -e 1,2d -e {s/^\(.\)/\1 /} -e {s/^ /%/}]" } puts $channelId "<<>>" diff --git a/addon/addon/waitmax-ccu2 b/addon/addon/waitmax-ccu2 new file mode 100755 index 0000000..1661605 Binary files /dev/null and b/addon/addon/waitmax-ccu2 differ diff --git a/addon/addon/waitmax-ccu3 b/addon/addon/waitmax-ccu3 new file mode 100755 index 0000000..f2aeac0 Binary files /dev/null and b/addon/addon/waitmax-ccu3 differ diff --git a/addon/rc.d/check_mk_agent b/addon/rc.d/check_mk_agent index 9b482a4..4ab52eb 100755 --- a/addon/rc.d/check_mk_agent +++ b/addon/rc.d/check_mk_agent @@ -8,6 +8,12 @@ RCDDIR=/usr/local/etc/config/rc.d case "$1" in ""|start) + rm -f /usr/local/addons/${ADDONNAME}/waitmax 2>/dev/null + if [ "$(uname -m)" == "armv5tejl" ]; then + ln -s /usr/local/addons/${ADDONNAME}/waitmax-ccu2 /usr/local/addons/${ADDONNAME}/waitmax + else + ln -s /usr/local/addons/${ADDONNAME}/waitmax-ccu3 /usr/local/addons/${ADDONNAME}/waitmax + fi tclsh $ADDONDIR/server.tcl & ;; @@ -23,7 +29,7 @@ case "$1" in info) echo "Info: (Inoffical) check_mk agent" - echo "Version: 1.3" + echo "Version: 1.4" echo "Name: check_mk_agent" echo "Operations: uninstall restart" ;;