<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:v =
"urn:schemas-microsoft-com:vml" xmlns:o =
"urn:schemas-microsoft-com:office:office" xmlns:w =
"urn:schemas-microsoft-com:office:word" xmlns:m =
"http://schemas.microsoft.com/office/2004/12/omml"><HEAD>
<META content="text/html; charset=utf-8" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.23588">
<STYLE><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
{mso-style-priority:99;
mso-style-link:"Texte brut Car";
margin:0cm;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-fareast-language:EN-US;}
span.TextebrutCar
{mso-style-name:"Texte brut Car";
mso-style-priority:99;
mso-style-link:"Texte brut";
font-family:"Calibri",sans-serif;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;
mso-fareast-language:EN-US;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:1004236920;
mso-list-type:hybrid;
mso-list-template-ids:-37034752 -670011980 202113049 202113051 202113039 202113049 202113051 202113039 202113049 202113051;}
@list l0:level1
{mso-level-text:%1-;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l0:level2
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l0:level3
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level4
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l0:level5
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l0:level6
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level7
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l0:level8
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l0:level9
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
ol
{margin-bottom:0cm;}
ul
{margin-bottom:0cm;}
--></STYLE>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></HEAD>
<BODY lang=FR-CA link=#0563c1 vLink=#954f72>
<DIV>Is the output to screen or to a file?</DIV>
<DIV> </DIV>
<DIV>Thanks.</DIV>
<DIV><BR><FONT size=2 face=Arial>*********** REPLY SEPARATOR
***********<BR><BR>On 22/06/2015 at 5:51 PM Denis Beauchemin wrote:</FONT></DIV>
<BLOCKQUOTE
style="BORDER-LEFT: #000000 2px solid; PADDING-LEFT: 5px; MARGIN-LEFT: 5px">
<DIV class=WordSection1>
<P class=MsoPlainText><SPAN lang=EN-CA>My log lines look like
this:<o:p></o:p></SPAN></P>
<P class=MsoPlainText><SPAN lang=EN-CA>Jun 22 13:26:16 10.32.103.21 smtps2
MailScanner[47071]: Message t5MHQFDv033375 from 10.32.106.21
(someone@usherbrooke.ca) to usherbrooke.ca is n'<SPAN
style="BACKGROUND: yellow; mso-highlight: yellow">est pas un polluriel,
SpamAssassin</SPAN> (<SPAN style="BACKGROUND: lime; mso-highlight: lime">not
cached,</SPAN> <SPAN
style="BACKGROUND: aqua; mso-highlight: aqua">score=</SPAN>-6.206, <SPAN
style="BACKGROUND: gray; mso-highlight: gray">requis</SPAN> 6.5, autolearn=not
spam, BAYES_00 -1.90, HTML_MESSAGE 0.00, RDNS_NONE 0.79, UDES_FROM01 -3.00,
UDES_FROM02 -0.10, UDES_FROMTO01 -2.00)<o:p></o:p></SPAN></P>
<P class=MsoPlainText><SPAN lang=EN-CA>Jun 22 13:27:23 10.32.103.28 smtpe1
MailScanner[61090]: Message t5MHR8mw063252 from 64.5.96.10
(someone@alliinclusive.space) to usherbrooke.ca is <SPAN
style="BACKGROUND: yellow; mso-highlight: yellow">est un polluriel,
SpamAssassin</SPAN> (<SPAN style="BACKGROUND: lime; mso-highlight: lime">not
cached,</SPAN> <SPAN
style="BACKGROUND: aqua; mso-highlight: aqua">score=</SPAN>7.776, <SPAN
style="BACKGROUND: gray; mso-highlight: gray">requis</SPAN> 6.5, <SPAN
style="BACKGROUND: silver; mso-highlight: silver">autolearn=spam</SPAN>,
BAYES_50 0.80, HTML_EXTRA_CLOSE 0.00, HTML_MESSAGE 0.00, HTML_TAG_BALANCE_BODY
1.16, MIME_HTML_ONLY 0.72, MIME_HTML_ONLY_MULTI 0.00, MPART_ALT_DIFF 0.79,
RDNS_NONE 0.79, STYLE_GIBBERISH 3.50, T_REMOTE_IMAGE
0.01)<o:p></o:p></SPAN></P>
<P class=MsoPlainText><SPAN lang=EN-CA><o:p> </o:p></SPAN></P>
<P class=MsoPlainText><SPAN lang=EN-CA>The script does a first grep for the
strings in <SPAN
style="BACKGROUND: yellow; mso-highlight: yellow">yellow</SPAN>. There’s a
third string that matches all ham/spam: <SPAN
style="BACKGROUND: yellow; mso-highlight: yellow">un polluriel,
SpamAssassin</SPAN><o:p></o:p></SPAN></P>
<P class=MsoPlainText><SPAN lang=EN-CA><o:p> </o:p></SPAN></P>
<P class=MsoPlainText><SPAN lang=EN-CA>Then Perl is used to search for lines
that match:<o:p></o:p></SPAN></P>
<P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 36pt; mso-list: l0 level1 lfo1"
class=MsoPlainText><![if !supportLists]><SPAN lang=EN-CA><SPAN
style="mso-list: Ignore">1-<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN></SPAN><![endif]><SPAN lang=EN-CA>The <SPAN
style="BACKGROUND: yellow; mso-highlight: yellow">yellow</SPAN> string
followed by “ (“<o:p></o:p></SPAN></P>
<P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 36pt; mso-list: l0 level1 lfo1"
class=MsoPlainText><![if !supportLists]><SPAN lang=EN-CA><SPAN
style="mso-list: Ignore">2-<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN></SPAN><![endif]><SPAN lang=EN-CA>Then the <SPAN
style="BACKGROUND: lime; mso-highlight: lime">green</SPAN> string (could also
be “cached”)<o:p></o:p></SPAN></P>
<P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 36pt; mso-list: l0 level1 lfo1"
class=MsoPlainText><![if !supportLists]><SPAN lang=EN-CA><SPAN
style="mso-list: Ignore">3-<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN></SPAN><![endif]><SPAN lang=EN-CA>Then the <SPAN
style="BACKGROUND: aqua; mso-highlight: aqua">blue</SPAN> strings, including
the digits, decimal point and minus sign<o:p></o:p></SPAN></P>
<P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 36pt; mso-list: l0 level1 lfo1"
class=MsoPlainText><![if !supportLists]><SPAN lang=EN-CA><SPAN
style="mso-list: Ignore">4-<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN></SPAN><![endif]><SPAN lang=EN-CA>Then the <SPAN
style="BACKGROUND: gray; mso-highlight: gray">dark grey</SPAN> strings,
including the digits, decimal point and minus sign<o:p></o:p></SPAN></P>
<P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 36pt; mso-list: l0 level1 lfo1"
class=MsoPlainText><![if !supportLists]><SPAN lang=EN-CA><SPAN
style="mso-list: Ignore">5-<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN></SPAN><![endif]><SPAN lang=EN-CA>Then the <SPAN
style="BACKGROUND: silver; mso-highlight: silver">light gray</SPAN> string
that could be omitted<o:p></o:p></SPAN></P>
<P style="TEXT-INDENT: -18pt; MARGIN-LEFT: 36pt; mso-list: l0 level1 lfo1"
class=MsoPlainText><![if !supportLists]><SPAN lang=EN-CA><SPAN
style="mso-list: Ignore">6-<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN></SPAN><![endif]><SPAN lang=EN-CA>Then all the rules names and
their respective score (could be negative)<o:p></o:p></SPAN></P>
<P class=MsoPlainText><SPAN lang=EN-CA><o:p> </o:p></SPAN></P>
<P class=MsoPlainText><SPAN lang=EN-CA>At the end the matching rules are
printed sorted as requested.<o:p></o:p></SPAN></P>
<P class=MsoPlainText><SPAN lang=EN-CA><o:p> </o:p></SPAN></P>
<P class=MsoPlainText><SPAN lang=EN-CA>Denis<o:p></o:p></SPAN></P>
<P class=MsoPlainText><SPAN lang=EN-CA><o:p> </o:p></SPAN></P>
<P class=MsoPlainText><SPAN style="mso-fareast-language: FR-CA"
lang=FR>-----Message d'origine-----<BR>De : MailScanner
[mailto:mailscanner-bounces@lists.mailscanner.info] De la part de Peter
Nitschke<BR>Envoyé : 22 juin 2015 13:21<BR>À :
mailscanner@lists.mailscanner.info<BR>Objet : RE: Check which rules
hit</SPAN></P>
<P class=MsoPlainText><o:p> </o:p></P>
<P class=MsoPlainText>This looks interesting.<o:p></o:p></P>
<P class=MsoPlainText><o:p> </o:p></P>
<P class=MsoPlainText>I edited to English for spam, not spam etc, but when I
run it, it just says "processing /var/log/maillog" and is very fast, but I get
nothing, no output to screen or file that I can find.<o:p></o:p></P>
<P class=MsoPlainText><o:p> </o:p></P>
<P class=MsoPlainText>Any suggestions how I can understand it
better?<o:p></o:p></P>
<P class=MsoPlainText><o:p> </o:p></P>
<P class=MsoPlainText>Thanks,<o:p></o:p></P>
<P class=MsoPlainText><o:p> </o:p></P>
<P class=MsoPlainText>Peter<o:p></o:p></P>
<P class=MsoPlainText><o:p> </o:p></P>
<P class=MsoPlainText><o:p> </o:p></P>
<P class=MsoPlainText>*********** REPLY SEPARATOR
***********<o:p></o:p></P>
<P class=MsoPlainText><o:p> </o:p></P>
<P class=MsoPlainText>On 19/06/2015 at 12:26 PM Denis Beauchemin
wrote:<o:p></o:p></P>
<P class=MsoPlainText><o:p> </o:p></P>
<P class=MsoPlainText>>This encoded message has been converted to an
attachment.<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>I created this script a while back just to do
that:<o:p></o:p></P>
<P class=MsoPlainText>>#!/usr/bin/perl -w<o:p></o:p></P>
<P class=MsoPlainText>>#<o:p></o:p></P>
<P class=MsoPlainText>># Script that looks through maillog to find all
messages tagged as spam <o:p></o:p></P>
<P class=MsoPlainText>># by MailScanner. It then tallies the
different SpamAssassin rules <o:p></o:p></P>
<P class=MsoPlainText>>that # fired.<o:p></o:p></P>
<P class=MsoPlainText>># Denis Beauchemin, 20050516<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>use Getopt::Long;<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>># Where some commands reside:<o:p></o:p></P>
<P class=MsoPlainText>>my $GREP = "/bin/grep";<o:p></o:p></P>
<P class=MsoPlainText>>my $GUNZIP = "/bin/gunzip";<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>># Value of "Spam =" in %report-dir%/languages.conf
my $isSpamString = <o:p></o:p></P>
<P class=MsoPlainText>>"est un polluriel, SpamAssassin";<o:p></o:p></P>
<P class=MsoPlainText>>my $isHamString = "est pas un polluriel,
SpamAssassin";<o:p></o:p></P>
<P class=MsoPlainText>>my $allString = " un
polluriel, SpamAssassin";<o:p></o:p></P>
<P class=MsoPlainText>># Value of "score =" in
%report-dir%/languages.conf<o:p></o:p></P>
<P class=MsoPlainText>>my $scoreString =
"score=";<o:p></o:p></P>
<P class=MsoPlainText>># Value of "required =" in
%report-dir%/languages.conf<o:p></o:p></P>
<P class=MsoPlainText>>my $reqdString = "requis
";<o:p></o:p></P>
<P class=MsoPlainText>>my $autoString =
"autolearn=spam";<o:p></o:p></P>
<P class=MsoPlainText>>my $cachedString = "cached, ";<o:p></o:p></P>
<P class=MsoPlainText>>my $nCachedString = "not cached, ";<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>my $maillog = "/var/log/maillog";<o:p></o:p></P>
<P class=MsoPlainText>>@maillogs = ();<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>my $sortByName = 0;<o:p></o:p></P>
<P class=MsoPlainText>>my $sortByHits = 0;<o:p></o:p></P>
<P class=MsoPlainText>>my $getHam = 0;<o:p></o:p></P>
<P class=MsoPlainText>>my $getAll = 0;<o:p></o:p></P>
<P class=MsoPlainText>>my $help = 0;<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>GetOptions(<o:p></o:p></P>
<P class=MsoPlainText>> 'sortbyname|byname' =>
\$sortByName,<o:p></o:p></P>
<P class=MsoPlainText>> 'sortbyhits|byhits' =>
\$sortByHits,<o:p></o:p></P>
<P class=MsoPlainText>> 'log=s' =>
\@maillogs,<o:p></o:p></P>
<P class=MsoPlainText>> 'ham' =>
\$getHam,<o:p></o:p></P>
<P class=MsoPlainText>> 'all' =>
\$getAll,<o:p></o:p></P>
<P class=MsoPlainText>> 'help' =>
\$help,<o:p></o:p></P>
<P class=MsoPlainText>>);<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>if ( $help ) {<o:p></o:p></P>
<P class=MsoPlainText>> print '<o:p></o:p></P>
<P class=MsoPlainText>>This program tallies SpamAssassin\'s rules that were
triggered when an <o:p></o:p></P>
<P class=MsoPlainText>>email was detected as spam by
MailScanner.<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>You can search for ham with the --ham option.
<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>You can search for all SpamAssassin results with the
--all option.<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>By default it sorts the results by rule name. It can
also sort them by <o:p></o:p></P>
<P class=MsoPlainText>>number of hits if called with --sortbyhits (or
--byhits).<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>The option --sortbyname (or --byname) is the default
one.<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>If you don\'t want to use the current maillog,
specify a different one <o:p></o:p></P>
<P class=MsoPlainText>>with --log new-maillog.<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>All unknown command line parameters will be treated
as additional file <o:p></o:p></P>
<P class=MsoPlainText>>names to process.<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>It is OK for a log file to be
gzipped.<o:p></o:p></P>
<P class=MsoPlainText>>';<o:p></o:p></P>
<P class=MsoPlainText>> exit;<o:p></o:p></P>
<P class=MsoPlainText>>}<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>push @maillogs, @ARGV;<o:p></o:p></P>
<P class=MsoPlainText>>@maillogs = ( $maillog ) if ( @maillogs == 0
); #print "Maillogs: <o:p></o:p></P>
<P class=MsoPlainText>>@maillogs\n"; #my $searchString = $getHam ?
$isHamString : <o:p></o:p></P>
<P class=MsoPlainText>>$isSpamString; my $searchString; if ( $getAll )
{<o:p></o:p></P>
<P class=MsoPlainText>> $searchString =
"$allString";<o:p></o:p></P>
<P class=MsoPlainText>>} elsif ( $getHam ) {<o:p></o:p></P>
<P class=MsoPlainText>> $searchString =
"$isHamString";<o:p></o:p></P>
<P class=MsoPlainText>>} else {<o:p></o:p></P>
<P class=MsoPlainText>> $searchString =
"$isSpamString";<o:p></o:p></P>
<P class=MsoPlainText>>}<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>foreach my $maillog ( @maillogs ) {<o:p></o:p></P>
<P class=MsoPlainText>> print "Processing
$maillog...\n";<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>> $sortByName++ if ( ( $sortByName
== 0 ) && ( $sortByHits == 0<o:p></o:p></P>
<P class=MsoPlainText>) );<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>> my $openCmd = "LANG=C $GREP
\"$searchString\" $maillog |";<o:p></o:p></P>
<P class=MsoPlainText>> if ( $maillog =~ /\.gz$/ )
{<o:p></o:p></P>
<P class=MsoPlainText>> $openCmd
= "$GUNZIP -c $maillog | LANG=C $GREP<o:p></o:p></P>
<P class=MsoPlainText>\"$searchString\"<o:p></o:p></P>
<P class=MsoPlainText>>|";<o:p></o:p></P>
<P class=MsoPlainText>> }<o:p></o:p></P>
<P class=MsoPlainText>> open LOG, "$openCmd" || die
"Cannot open $maillog";<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>> while ( <LOG> )
{<o:p></o:p></P>
<P class=MsoPlainText>> next
unless /$searchString<o:p></o:p></P>
<P
class=MsoPlainText>>\((?:$cachedString|$nCachedString)$scoreString[-\d.]+,
$reqdStrin<o:p></o:p></P>
<P class=MsoPlainText>>g[-\d.]+,(?: $autoString,)?(.*)$/;<o:p></o:p></P>
<P class=MsoPlainText>> my $hits
= $1;<o:p></o:p></P>
<P class=MsoPlainText>> foreach
my $hit ( $hits =~ / ([^\s]+) -?[\d.]+(?:,|\))/g ) {<o:p></o:p></P>
<P
class=MsoPlainText>>
$hit{$hit}++;<o:p></o:p></P>
<P class=MsoPlainText>>
}<o:p></o:p></P>
<P class=MsoPlainText>> }<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>> close LOG;<o:p></o:p></P>
<P class=MsoPlainText>>}<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>if ( $sortByName ) {<o:p></o:p></P>
<P class=MsoPlainText>> foreach my $hit ( sort keys %hit
) {<o:p></o:p></P>
<P class=MsoPlainText>> printf
"%27s %5d\n", $hit, $hit{$hit};<o:p></o:p></P>
<P class=MsoPlainText>> }<o:p></o:p></P>
<P class=MsoPlainText>>} elsif ( $sortByHits ) {<o:p></o:p></P>
<P class=MsoPlainText>> foreach my $hit ( sort
{$hit{$b}<=>$hit{$a}} keys %hit ) {<o:p></o:p></P>
<P class=MsoPlainText>> printf
"%27s %5d\n", $hit, $hit{$hit};<o:p></o:p></P>
<P class=MsoPlainText>> }<o:p></o:p></P>
<P class=MsoPlainText>>}<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>-----Message d'origine-----<o:p></o:p></P>
<P class=MsoPlainText>>De : MailScanner [<A
href="mailto:mailscanner-bounces@lists.mailscanner.info"><SPAN
style="COLOR: windowtext; TEXT-DECORATION: none">mailto:mailscanner-bounces@lists.mailscanner.info</SPAN></A>]<o:p></o:p></P>
<P class=MsoPlainText>De<o:p></o:p></P>
<P class=MsoPlainText>>la part de Peter Nitschke<o:p></o:p></P>
<P class=MsoPlainText>>Envoyé : 19 juin 2015 02:21<o:p></o:p></P>
<P class=MsoPlainText>>À : <A
href="mailto:mailscanner@lists.mailscanner.info"><SPAN
style="COLOR: windowtext; TEXT-DECORATION: none">mailscanner@lists.mailscanner.info</SPAN></A><o:p></o:p></P>
<P class=MsoPlainText>>Objet : Check which rules hit<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>I have built up a large number of rules for SA to
use with MS and many <o:p></o:p></P>
<P class=MsoPlainText>>are probably now obsolete.<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>How can I monitor which rules are getting
hits?<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>Thanks.<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>Peter<o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>>--<o:p></o:p></P>
<P class=MsoPlainText>>MailScanner mailing list<o:p></o:p></P>
<P class=MsoPlainText>><A
href="mailto:mailscanner@lists.mailscanner.info"><SPAN
style="COLOR: windowtext; TEXT-DECORATION: none">mailscanner@lists.mailscanner.info</SPAN></A><o:p></o:p></P>
<P class=MsoPlainText>><A
href="http://lists.mailscanner.info/listinfo/mailscanner"><SPAN
style="COLOR: windowtext; TEXT-DECORATION: none">http://lists.mailscanner.info/listinfo/mailscanner</SPAN></A><o:p></o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText>><o:p> </o:p></P>
<P class=MsoPlainText><o:p> </o:p></P>
<P class=MsoPlainText>--<o:p></o:p></P>
<P class=MsoPlainText>MailScanner mailing<o:p></o:p></P>
<P class=MsoPlainText>>list<o:p></o:p></P>
<P class=MsoPlainText><A
href="mailto:mailscanner@lists.mailscanner.info"><SPAN
style="COLOR: windowtext; TEXT-DECORATION: none">mailscanner@lists.mailscanner.info</SPAN></A><o:p></o:p></P>
<P class=MsoPlainText><A
href="http://lists.mailscanner.info/listinfo/mailscanner"><SPAN
style="COLOR: windowtext; TEXT-DECORATION: none">http://lists.mailscanner.info/listinfo/mailscanner</SPAN></A><o:p></o:p></P>
<P class=MsoPlainText><o:p> </o:p></P>
<P class=MsoPlainText><o:p> </o:p></P>
<P class=MsoPlainText><o:p> </o:p></P></DIV><FONT size=2
Arial></BLOCKQUOTE></FONT></BODY></HTML>