On 17/02/2008, Andrej Ricnik-Bay <andrej.groups@xxxxxxxxx> wrote: > On 16/02/2008, Greg Smith <gsmith@xxxxxxxxxxxxx> wrote: > > > top -bc | tee topdata > > > > That will save everything to a file called topdata while also letting you > > watch it scroll by. Not as easy to catch the bad periods that way, the > > output is going to be a huge data file, but you'll have a log to sort > > through of everything. Control-C to get out of there when you're bored. > > Or pipe through the following awk-script to make the output > less overwhelming ... save it as top.awk > > BEGIN{ > # the sort numerically sorts by memory usage percentage > # head filters out the top 20 contenders > command = "LC_ALL=C sort -k 10,10gr|head -20" > } > { > # read all of top into an array > line[NR]=$0 > last=NR > } > END{ > # print the header well-formed > for(i=1;i<8;i++){ > print line[i] > } > # and do the sort & strip of the processes > for(i=8;i<last;i++){ > print line[i]|& command > } > close(command, "to") > while ((command |& getline out) > 0) > print out > close(command) > } > > Invoke like so > top -b -d 1 | awk -f top.awk | tee topdata > > Instead of the "getting bored Ctrl-C" maybe a "-n 3600" as > extra parameter to top to get roughly one hours worth of data... Thanks, but it gives me syntax errors: ~> top -b -d 1 | awk -f top.awk | tee topdata awk: top.awk:24: for(i=8;i<last;i++ awk: top.awk:24: ^ syntax error awk: top.awk:28: awk: top.awk:28: ^ syntax error awk: top.awk:29: awk: top.awk:29: ^ syntax error awk: top.awk:31: awk: top.awk:31: ^ syntax error awk: top.awk:31: } awk: top.awk:31: ^ invalid char '?' in expression Any ideas? ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings