From 8b0f49de2e242621b7ae54e752ff027a355355bf Mon Sep 17 00:00:00 2001 From: Alexander Moisseev Date: Tue, 26 Jul 2016 10:58:49 +0300 Subject: [PATCH] Attempt to make rspamd_stats output readable --- utils/rspamd_stats.pl | 44 +++++++++++++++++++++++++++++++------------ 1 file changed, 32 insertions(+), 12 deletions(-) diff --git a/utils/rspamd_stats.pl b/utils/rspamd_stats.pl index 13ebb979c..e81cad401 100644 --- a/utils/rspamd_stats.pl +++ b/utils/rspamd_stats.pl @@ -153,24 +153,44 @@ if ($total > 0) { my $htp = $hh * 100.0 / $total_ham if $total_ham != 0; my $stp = $sh * 100.0 / $total_spam if $total_spam != 0; my $jtp = $jh * 100.0 / $total_junk if $total_junk != 0; - printf "Symbol: %s (weight %.3f) (%d hits, %.3f%%)\nHam hits: %d (%.3f%%), total ham: %d (ham with $s: %.3f%%)\nSpam hits: %d (%.3f%%), total spam: %d (spam with $s: %.3f%%)\nJunk hits: %d (%.3f%%), total junk: %d (junk with $s: %.3f%%)\n", - $s, $r->{weight} / $r->{hits}, $th, ($th / $total * 100.0), - $hh, ($hh / $th * 100.0), $total_ham, ($htp or 0), - $sh, ($sh / $th * 100.0), $total_spam, ($stp or 0), - $jh, ($jh / $th * 100.0), $total_junk, ($jtp or 0); + + printf "%s avg. weight %.3f, hits %d(%.3f%%): + Ham %7.3f%%, %6d/%-6d (%7.3f%%) + Spam %7.3f%%, %6d/%-6d (%7.3f%%) + Junk %7.3f%%, %6d/%-6d (%7.3f%%) +", + $s, $r->{weight} / $r->{hits}, $th, ( $th / $total * 100 ), + ( $hh / $th * 100 ), $hh, $total_ham, ( $htp or 0 ), + ( $sh / $th * 100 ), $sh, $total_spam, ( $stp or 0 ), + ( $jh / $th * 100 ), $jh, $total_junk, ( $jtp or 0 ); + my $schp = $r->{spam_change} / $total_spam * 100.0 if $total_spam; my $jchp = $r->{junk_change} / $total_junk * 100.0 if $total_junk; if ($r->{weight} != 0) { if ($r->{weight} > 0) { - printf "Spam changes (ham/junk -> spam): %d (%.3f%%), total percentage (changes / spam hits): %.3f%%\nJunk changes (ham -> junk): %d (%.3f%%), total percentage (changes / junk hits): %.3f%%\n", - $r->{spam_change}, ($r->{spam_change} / $th * 100.0), ($schp or 0), - $r->{junk_change}, ($r->{junk_change} / $th * 100.0), ($jchp or 0); + printf " +Spam changes (ham/junk -> spam): %6d/%-6d (%7.3f%%) +Spam changes / total spam hits: %6d/%-6d (%7.3f%%) +Junk changes (ham -> junk): %6d/%-6d (%7.3f%%) +Junk changes / total junk hits: %6d/%-6d (%7.3f%%) +", + $r->{spam_change}, $th, ( $r->{spam_change} / $th * 100 ), + $r->{spam_change}, $total_spam, ( $schp or 0 ), + $r->{junk_change}, $th, ( $r->{junk_change} / $th * 100 ), + $r->{junk_change}, $total_junk, ( $jchp or 0 ); } else { - printf "Spam changes (spam -> junk/ham): %d (%.3f%%), total percentage (changes / spam hits): %.3f%%\nJunk changes (junk -> ham): %d (%.3f%%), total percentage (changes / junk hits): %.3f%%\n", - $r->{spam_change}, ($r->{spam_change} / $th * 100.0), ($schp or 0), - $r->{junk_change}, ($r->{junk_change} / $th * 100.0), ($jchp or 0); + printf " +Spam changes (spam -> junk/ham): %6d/%-6d (%7.3f%%) +Spam changes / total spam hits : %6d/%-6d (%7.3f%%) +Junk changes (junk -> ham) : %6d/%-6d (%7.3f%%) +Junk changes / total junk hits : %6d/%-6d (%7.3f%%) +", + $r->{spam_change}, $th, ( $r->{spam_change} / $th * 100 ), + $r->{spam_change}, $total_spam, ( $schp or 0 ), + $r->{junk_change}, $th, ( $r->{junk_change} / $th * 100 ), + $r->{junk_change}, $total_junk, ( $jchp or 0 ); } } } @@ -178,7 +198,7 @@ if ($total > 0) { print "Symbol $s has not been met\n"; } - print '*' x 20 . "\n"; + print '-' x 80 . "\n"; } } -- 2.39.5