Update dsmon.sh
This commit is contained in:
17
dsmon.sh
17
dsmon.sh
@@ -92,7 +92,8 @@ CHECK(){
|
||||
start=`date +%s`
|
||||
|
||||
C_CW=40
|
||||
|
||||
shopt -s nullglob
|
||||
|
||||
declare -A host_ip
|
||||
declare -A host_name
|
||||
declare -A host_limits
|
||||
@@ -121,8 +122,7 @@ CHECK(){
|
||||
host_ids[$hostname]=$hostid
|
||||
hostnames_sort+=("$hostname")
|
||||
fi
|
||||
done <<< $(MYSQL_PWD="sysmoninsert" ${mysqlcmd} ${mysql_conn} -u sysmoninsert -e "SELECT id,host,ip,limits FROM servermonitor.hosts WHERE disabled=0")
|
||||
# done <<< $(MYSQL_PWD="sysmoninsert" ${mysqlcmd} ${mysql_conn} -u sysmoninsert -e "SELECT id,host,ip,limits FROM servermonitor.hosts WHERE disabled=0 AND host LIKE '%WAN%'")
|
||||
done <<< $(MYSQL_PWD="sysmoninsert" ${mysqlcmd} ${mysql_conn} -u sysmoninsert -e "SELECT id,host,ip,limits FROM servermonitor.hosts WHERE disabled=0")
|
||||
IFS=$'\n' hostnames_sort=($(sort <<<"${hostnames_sort[*]}")); unset IFS
|
||||
[ "${1}" != "report" ] && echo -e "${idsCL[LightGreen]}Done${idsCL[Default]}"
|
||||
|
||||
@@ -131,7 +131,6 @@ CHECK(){
|
||||
c=0; cw=${C_CW}; spc=''; spc1=$(expr ${cw} - ${#MSG}); until [ $c = ${spc1} ]; do spc="${spc} "; c=`expr $c + 1`; done
|
||||
echo -en "${idsCL[LightCyan]}${MSG}${spc}: "
|
||||
fi
|
||||
#for hostid in "${!host_ip[@]}"; do
|
||||
for hostname in "${hostnames_sort[@]}"; do
|
||||
until [ $(ls /tmp/dscheck.*.running 2>/dev/null | wc -l) -lt 6 ]; do tmp=tmp; done
|
||||
RUN_CHECK ${hostname} > /tmp/dscheck.${hostname}.results 2>/dev/null &
|
||||
@@ -141,18 +140,15 @@ CHECK(){
|
||||
done
|
||||
[ "${1}" != "report" ] && echo -e "${idsCL[LightGreen]}Done${idsCL[Default]}\n"
|
||||
|
||||
shopt -s nullglob
|
||||
nc_count=0; completed=false; scanstart=$(date +%s)
|
||||
until [ "${completed}" == "true" ]; do
|
||||
until [ $(ls /tmp/dscheck.*.done 2>/dev/null | wc -l) -gt 0 ]; do tmp=tmp; done
|
||||
for host in /tmp/dscheck.*.done; do
|
||||
# NTS=$(grep -oP '(?<=dscheck\.).*?(?=\.done)' <<< "${host}")
|
||||
echo "1:'$host'"
|
||||
NTS=$(grep -oP '(?<=dscheck\.).*?(?=\.done)' <<< "${host}")
|
||||
if [ -n "$NTS" ]; then
|
||||
# echo -e "$(cat /tmp/dscheck.${NTS}.results)"
|
||||
# rm -f /tmp/dscheck.${NTS}.* >/dev/null 2>&1
|
||||
echo -e "$(cat /tmp/dscheck.${NTS}.results)"
|
||||
rm -f /tmp/dscheck.${NTS}.* >/dev/null 2>&1
|
||||
((nc_count++))
|
||||
echo "2:'$NTS' = ${nc_count}"
|
||||
fi
|
||||
done
|
||||
if [ $(($(date +%s)-scanstart)) -gt 300 ]; then
|
||||
@@ -166,7 +162,6 @@ CHECK(){
|
||||
break
|
||||
fi
|
||||
sleep 1s
|
||||
echo "---------------------"
|
||||
done
|
||||
|
||||
end=`date +%s`; runtime=$((end-start)); echo -e "\nScript Runtime: ${runtime}"
|
||||
|
||||
Reference in New Issue
Block a user