Difference between revisions of "Ministat"

From James Dooley's Wiki
Jump to: navigation, search
(Script)
(Script)
Line 9: Line 9:
  
 
<code>[bash,n]
 
<code>[bash,n]
 +
#!/bin/bash
 +
cmdtop=`top -c -b -n 1 | grep "PID" -A999`
 +
cmdmysql=`mysqladmin proc stat | grep "|" | grep -v "Id" | awk '{FS="|"};{print $7,$6,$9}' | sort -n`
 +
 +
wctop=`echo $cmdtop | wc -l`
 +
wcmysql=`echo $cmdmysql | wc -l`
 +
 +
nline=`tput lines | awk '{print int(($1 - 18) / 2)}'`
 +
if [ $nline -gt $wcmysql ]
 +
then
 +
  nline=`echo $nline $wcmysql | awk '{print $1 * 2 - $2}'`
 +
fi
 +
 +
#Display Junk
 
cat /proc/loadavg
 
cat /proc/loadavg
 
printf "%$(tput cols)s\n"|tr ' ' '='
 
printf "%$(tput cols)s\n"|tr ' ' '='
top -c -b -n 1 | head -12 | tail -3
+
top -c -b -n 1 | grep "PID" -A999 | head -$nline
 
printf "%$(tput cols)s\n"|tr ' ' '='
 
printf "%$(tput cols)s\n"|tr ' ' '='
mysqladmin proc stat | grep "|" | grep -v "Id"  | awk 'BEGIN {FS="|"};{print $7,$6,$9}' | sort -n | head -3
+
echo $cmdmysql | head -$nline
 
printf "%$(tput cols)s\n"|tr ' ' '='
 
printf "%$(tput cols)s\n"|tr ' ' '='
 
free | grep -v "cache:"
 
free | grep -v "cache:"

Revision as of 18:19, 17 May 2011

Overview

Down and dirty mini status viewer. Makes it easy to monitor several different sections of a server at the same time.

Useful for monitoring a server that is having problems.

The main concept is to minify the output of several sections in to a small terminal window, useful for monitoring a server when it is having problems or could at some point.

Script

[bash,n]

  1. !/bin/bash

cmdtop=`top -c -b -n 1 | grep "PID" -A999` cmdmysql=`mysqladmin proc stat | grep "|" | grep -v "Id" | awk '{FS="|"};{print $7,$6,$9}' | sort -n`

wctop=`echo $cmdtop | wc -l` wcmysql=`echo $cmdmysql | wc -l`

nline=`tput lines | awk '{print int(($1 - 18) / 2)}'` if [ $nline -gt $wcmysql ] then

 nline=`echo $nline $wcmysql | awk '{print $1 * 2 - $2}'`

fi

  1. Display Junk

cat /proc/loadavg printf "%$(tput cols)s\n"|tr ' ' '=' top -c -b -n 1 | grep "PID" -A999 | head -$nline printf "%$(tput cols)s\n"|tr ' ' '=' echo $cmdmysql | head -$nline printf "%$(tput cols)s\n"|tr ' ' '=' free | grep -v "cache:" printf "%$(tput cols)s\n"|tr ' ' '=' httpd status | grep "requests/sec" -A6

Usage

Direct download and execution of script (auto mode)

[bash,n]wget http://wiki.jamesdooley.us/scripts/ministat -O ministat; watch -n 10 sh ministat; rm -f ministat

What to change