]> git.nbdom.net Git - nb.git/commitdiff
etc/profile.d/sys.sh
authorNicolas Boisselier <nicolas.boisselier@gmail.com>
Tue, 12 Dec 2017 01:42:49 +0000 (01:42 +0000)
committerNicolas Boisselier <nicolas.boisselier@gmail.com>
Tue, 12 Dec 2017 01:42:49 +0000 (01:42 +0000)
etc/profile.d/nb.sh
etc/profile.d/sys.sh

index 0cefa9024c29328b78f67a9b43035f43673ada89..c1e5883bc0997f43f1702d0c78dbf59e24cfa0ad 100644 (file)
@@ -79,11 +79,18 @@ nb_api_insert() {
   local host=$(hostname)
   [ -z "$host" ] && host=$(hostname -f)
 
-  local curl="curl -u nb:0TXARcQUpjHZctoROA2X.weWSZKM5DGT -H 'Accept: text/json' https://api.nbdom.net/data/$table/insert"
+  local curl="curl -su nb:0TXARcQUpjHZctoROA2X.weWSZKM5DGT -H 'Accept: text/json' https://api.nbdom.net/data/$table/insert -d host=$host"
 
   while [ "$#" -gt "0" ]; do
-    curl+=" -d $1"
+    curl+=" -d "$1""
     shift
   done
-  eval "$curl"
+  eval "$curl | tr -d '\n'" && echo
 }
+
+nb_api_insert_sys_infos() {
+  sys_infos | while IFS=$'\t' read -r -a i; do
+    eval "nb_api_insert host_info \"key=${i[0]}\" \"val=${i[1]}\""
+  done
+}
+
index 6f83c21c8af15970db1ddfe8cf3355d35606e34e..5c3d114a4c6f898fd067cf76f1f1d16add6d5cab 100644 (file)
 # NB 10.12.16   #*) return ;;
 # NB 10.12.16 esac
 
-sys_is_vm() {
-  grep -q ^flags.*\ hypervisor /proc/cpuinfo && echo "This machine is a VM"
+sys_infos() {
+       local n='>/dev/null 2>&1'
+       local s=$'\t'
+       cat <<EOF
+arch${s}$( (sysctl -n hw.machine || arch) 2>/dev/null )
+nproc${s}$( (sysctl -n hw.ncpu || nproc || grep ^proc /proc/cpuinfo | wc -l) 2>/dev/null )
+date_install $( (date -r $(ls -1d /lost+found /etc/ssh/ssh_host_dsa_key.pub /etc/ssh_host_dsa_key.pub|head -1) +'%F %T') 2>/dev/null )
+EOF
 }
 
-sys_logs() {
-  true
+sys_df() {
+       df -P -l | tail -n +2 | while read -r -a i; do
+               mount=${i[0]}
+               [ -e "$mount" ] || continue
+               used=${i[2]}
+               free=${i[3]}
+               pcent=${i[4]}
+               pcent=${pcent//%/}
+               dir=${i[5]}
+
+# NB 12.12.17          inodes=($(df -P -l "$dir" | tail -n +2))
+# NB 12.12.17          iused=${inodes[2]}
+# NB 12.12.17          ifree=${inodes[3]}
+# NB 12.12.17          ipcent=${inodes[4]}
+# NB 12.12.17          ipcent=${pcent//%/}
+# NB 12.12.17          idir=${inodes[5]}
+
+               echo -e "$dir\t$pcent\t$used\t$free"
+               #echo -e "$dir\tused\t$used"
+               #echo -e "$dir\tfree\t$free"
+               #echo -e "$dir\tpcent\t$pcent"
+       done
+}
+
+sys_is_vm() {
+       grep -q '^flags.* hypervisor' /proc/cpuinfo && echo "This machine is a VM"
 }
 
 sys_activity() {
 
-  local tmp=/tmp/
-  [ -d /dev/shm/ ] && tmp=/dev/shm/
-  tmp="$tmp/$FUNCNAME.$$"
-  netstat -autpn > $tmp.netstat
-  w|head -1|sed 's/^ *//'
-
-  case "$OSTYPE" in
-    linux*)
-      echo 'IO:'
-      #iostat -c -m -d -x `df -hT -x tmpfs|perl -ane 'm:^/: and print $F[0]."\n"'` | tail -n +3 | grep -vFx ''| sed 's/^/  /' 
-      iostat -c -m -d -x  | tail -n +3 | grep -vFx ''| sed 's/^/  /' 
-      echo
-    ;;
-  esac
-
-  echo 'Mem:'
-  free -hm | sed 's/^/  /'
-  echo
-
-  echo 'Top ips conns:'
-  cat "$tmp.netstat" \
-    | tail -n +2 \
-    | awk '$5~/^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/{gsub(/:.*/,"",$5);print $5}' \
-    | sort \
-    | uniq -c \
-    | sed 's/^ *//' \
-    | sort -nr -k 1 \
-    | head \
-    | awk '{ i++; sub(/^([0-9]+) +(.*?)$/,sprintf("%-15s %5d",$2,$1),$0); if (i % 2 == 0){ print $0 } else{ printf "  "$0" | "} } END {if (i%2 != 0){print}}' \
-  ;
-  echo
-
-  echo 'dmesg:'
-  ( dmesg -T 2>/dev/null || dmesg ) | tail -4 | sed 's/^/  /'
-  echo
-
-  if [ -e /var/log/auth.log ]; then
-    echo '/var/log/auth.log:'
-    tail -2 /var/log/auth.log | sed 's/^/  /'
-    echo
-  fi
-
-  if [ -e /var/log/system.log ]; then
-    echo 'system:'
-    tail -5 /var/log/system.log | sed 's/^/  /'
-    echo
-  fi
-
-  rm -rf "$tmp"*
+       local tmp=/tmp/
+       [ -d /dev/shm/ ] && tmp=/dev/shm/
+       tmp="$tmp/$FUNCNAME.$$"
+       netstat -autpn > $tmp.netstat
+       w|head -1|sed 's/^ *//'
+
+       case "$OSTYPE" in
+               linux*)
+                       echo 'IO:'
+                       #iostat -c -m -d -x `df -hT -x tmpfs|perl -ane 'm:^/: and print $F[0]."\n"'` | tail -n +3 | grep -vFx ''| sed 's/^/  /' 
+                       iostat -c -m -d -x  | tail -n +3 | grep -vFx ''| sed 's/^/  /' 
+                       echo
+               ;;
+       esac
+
+       echo 'Mem:'
+       free -hm | sed 's/^/  /'
+       echo
+
+       echo 'Top ips conns:'
+       cat "$tmp.netstat" \
+               | tail -n +2 \
+               | awk '$5~/^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/{gsub(/:.*/,"",$5);print $5}' \
+               | sort \
+               | uniq -c \
+               | sed 's/^ *//' \
+               | sort -nr -k 1 \
+               | head \
+               | awk '{ i++; sub(/^([0-9]+) +(.*?)$/,sprintf("%-15s %5d",$2,$1),$0); if (i % 2 == 0){ print $0 } else{ printf "  "$0" | "} } END {if (i%2 != 0){print}}' \
+       ;
+       echo
+
+       echo 'dmesg:'
+       ( dmesg -T 2>/dev/null || dmesg ) | tail -4 | sed 's/^/  /'
+       echo
+
+       if [ -e /var/log/auth.log ]; then
+               echo '/var/log/auth.log:'
+               tail -2 /var/log/auth.log | sed 's/^/  /'
+               echo
+       fi
+
+       if [ -e /var/log/system.log ]; then
+               echo 'system:'
+               tail -5 /var/log/system.log | sed 's/^/  /'
+               echo
+       fi
+
+       rm -rf "$tmp"*
 }
 
 sys_watch() {
-  local opt="$@"
-  [ -z "$opt" ] && opt="-d"
+       local opt="$@"
+       [ -z "$opt" ] && opt="-d"
 
-  shopt -s expand_aliases;
-  export -f $(typeset -f | awk '/^[a-z]+[a-zA-Z0-9_]+ \(\)/{print $1}')
-  watch --no-title $opt sys_activity
+       shopt -s expand_aliases;
+       export -f $(typeset -f | awk '/^[a-z]+[a-zA-Z0-9_]+ \(\)/{print $1}')
+       watch --no-title $opt sys_activity
 # NB 08.08.17   export -f sys_activity
 # NB 08.08.17   watch --no-title $opt bash -c "sys_activity"
 }