X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=amplot%2Famplot.awk;h=2c4a5ad4aa97fc92036c071967bf21b7addbffa9;hb=d74dc4d908fcbc1a4ef474edaf51e61ec90eab6b;hp=962c080b29d237b211ac71add22d25971e089568;hpb=0de2ad0a86685398621fb8ffa6990c029681bb3a;p=debian%2Famanda diff --git a/amplot/amplot.awk b/amplot/amplot.awk index 962c080..2c4a5ad 100644 --- a/amplot/amplot.awk +++ b/amplot/amplot.awk @@ -92,7 +92,7 @@ BEGIN{ else if( $2=="flush" && $3=="size" ) { flush_size = $4; } - else if( $2=="start") do_start(); + else if( $2=="start" && $3=="time") do_start(); else if( $2=="send-cmd") { if( $7=="FILE-DUMP"){ file_dump++; @@ -107,6 +107,9 @@ BEGIN{ else if( $2=="finished-cmd") cmd_fin++; else if( $2=="started") forked++; else if( $2=="QUITTING") do_quit(); + else if( $2=="find_diskspace:") ; #eat this line + else if( $2=="assign_holdingdisk:") ; #eat this line + else if( $2=="adjust_diskspace:") ; #eat this line else if( $2=="tape" && $3=="size") ; #eat this line else if( $2=="dump" && $3=="failed") ; #eat this line else if( $2=="taper" && $3=="failed") ; #eat this line @@ -129,7 +132,7 @@ BEGIN{ print fil, "INFO#", $0; } else if( $1 == "taper:") { - if($3 != "label" && $3 != "end" && $2 != "DONE" && $2 != "pid" && $2 != "slot" && $2 != "reader-side:" && $2 != "page" && $2 != "buffer" && $3 != "at") + if($3 != "label" && $3 != "end" && $2 != "DONE" && $2 != "pid" && $2 != "slot" && $2 != "reader-side:" && $2 != "page" && $2 != "buffer" && $3 != "at" && $3 != "switching" && $2 != "slot:") print fil, "INFO#", $0; } else if( $1 == "FLUSH") { @@ -151,11 +154,16 @@ function do_state(){ # state line is printed out after driver # $11 = "writing"/"idle"# $12 = "idle-dumpers:" # $13 = #idle # $14 = "qlen" # $15 = "tapeq:" # $16 = #waiting # $17 = "runq:" # $18 = #not started -# $19 = "stoppedq:" # $20 = #stopped +# $19 = "roomq" # $20 = #roomq # $21 = "wakeup:" +# $22 = #wakeup # $23 = "driver-idle:" # $23 = status cnt++; # number of event time = $4/time_scale; - unused = (bandw - $7)*bandw_scale+bandw_raise; + #Check overflow in driver ouput (big value instead of negative) + if($7>0 && $7 < 0x7fffffff) + unused = (bandw - $7)*bandw_scale+bandw_raise; + else + unused = bandw_raise; if( unused != unused_old) printf plot_fmt, time, unused_old, time,unused >>"bandw_free"; unused_old = unused; @@ -360,6 +368,7 @@ function do_result(){ # process lines driver: result else { # something bad from dumper if ($7=="FAILED") { failed++;} else if ($7=="TRY-AGAIN"){ try++;} + else if ($7=="PORT") ; # ignore from chunker else if ($7=="RQ-MORE-DISK") ; # FIXME: ignore for now else if ($7=="NO-ROOM") print fil, pr_time($4),"#" ++no_room, $0; @@ -430,19 +439,19 @@ function print_t(){ # printing out the labels for the graph printf "set yrange[0:%d]\n",maxy >"title"; if( maxtime < tim && extend !=0) { printf "set xrange[0:%d]\n", tim+30 >>"title"; - second_col = tim*0.5; - key_col = tim; + second_col = tim*0.45; + key_col = tim + 10; third_col = tim +13; } else { printf "set xrange[0:%d]\n", maxtime >>"title"; - second_col = (maxtime-10) * 0.5; - key_col = (maxtime-10) ; + second_col = (maxtime-10) * 0.45; + key_col = maxtime; third_col = maxtime +3; } label_shift = (7 + int(no_disks/100)); lab = label_start = maxy+(6*label_shift) ; # showing 6 labels - printf "set key %d, %d\n", key_col, lab >>"title"; + printf "set key %d, %d\n", key_col, lab+4 >>"title"; printf "set label %d \"Amanda Dump %s\" at 10,%d\n", ++label,fil, lab >"title"; lab -= label_shift; @@ -505,6 +514,8 @@ function print_t(){ # printing out the labels for the graph if(paper==1) printf "set term postscript landscape color \"Times-Roman\" 10\n" >>"title"; else printf "set term postscript portrait color \"Times-Roman\" 10\n" >>"title"; } + } else { + printf "set term x11\n" >> "title"; } printf "set ylabel """";" >>"title"; # make sure there is no ylabel fmt= "set label %d \"%s\" at "third_col", %d\n";