scripts/innreport_inn.pm: correct innfeed statistics
Igor Timkin
ivt at gamma.ru
Tue Oct 24 14:44:39 UTC 2000
Correct statistics for innfeed. Remove child and global statistics (when
innfeed restarted innreport use global statistics which may accumulate
for several days). Now innfeed will use final statistic only which
generated every stats-reset secs.
Example of incorrect statistics available on http://newsfeed.gamma.ru/innreport/
(see ``outgoing feeds'' column for Oct 8 23:59:15 -- Oct 9 23:59:12
for example).
--- scripts/innreport_inn.pm.OLD Wed Oct 18 13:01:23 2000
+++ scripts/innreport_inn.pm Tue Oct 24 17:02:24 2000
@@ -583,82 +583,11 @@
return 1 if $left =~ m/\S+:\d+ closed periodic$/o;
# periodic close
return 1 if $left =~ m/\S+:\d+ periodic close$/o;
- # final (child) (new format)
- if ($left =~ /(\S+):\d+ final seconds (\d+) offered (\d+) accepted (\d+) refused (\d+) rejected (\d+) accsize (\d+) rejsize (\d+)/o) {
- my ($server, $seconds, $offered, $accepted, $refused, $rejected, $accepted_size, $rejected_size) =
- ($1, $2, $3, $4, $5, $6, $7, $8);
- $server = lc $server unless $CASE_SENSITIVE;
- $t_innfeed_seconds{$server} += $seconds;
- $t_innfeed_offered{$server} += $offered;
- $t_innfeed_accepted{$server} += $accepted;
- $t_innfeed_refused{$server} += $refused;
- $t_innfeed_rejected{$server} += $rejected;
- $t_innfeed_accepted_size{$server} += $accepted_size;
- $t_innfeed_rejected_size{$server} += $rejected_size;
- return 1;
- } elsif ($left =~ /(\S+):\d+ final seconds (\d+) offered (\d+) accepted (\d+) refused (\d+) rejected (\d+)/o) {
- my ($server, $seconds, $offered, $accepted, $refused, $rejected) =
- ($1, $2, $3, $4, $5, $6);
- $server = lc $server unless $CASE_SENSITIVE;
- $t_innfeed_seconds{$server} += $seconds;
- $t_innfeed_offered{$server} += $offered;
- $t_innfeed_accepted{$server} += $accepted;
- $t_innfeed_refused{$server} += $refused;
- $t_innfeed_rejected{$server} += $rejected;
- return 1;
- }
# final (real) (new format)
if ($left =~ /(\S+) final seconds (\d+) offered (\d+) accepted (\d+) refused (\d+) rejected (\d+) missing (\d+) accsize (\d+) rejsize (\d+) spooled (\d+)/o) {
my ($server, $seconds, $offered, $accepted, $refused, $rejected,
$missing, $accepted_size, $rejected_size, $spooled) = ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10);
$server = lc $server unless $CASE_SENSITIVE;
- $tt_innfeed_seconds{$server} += $seconds;
- $tt_innfeed_offered{$server} += $offered;
- $tt_innfeed_accepted{$server} += $accepted;
- $tt_innfeed_refused{$server} += $refused;
- $tt_innfeed_rejected{$server} += $rejected;
- $tt_innfeed_missing{$server} += $missing;
- $tt_innfeed_spooled{$server} += $spooled;
- $tt_innfeed_accepted_size{$server} += $accepted_size;
- $tt_innfeed_rejected_size{$server} += $rejected_size;
- $t_innfeed_seconds{$server} = 0;
- $t_innfeed_offered{$server} = 0;
- $t_innfeed_accepted{$server} = 0;
- $t_innfeed_refused{$server} = 0;
- $t_innfeed_rejected{$server} = 0;
- $t_innfeed_missing{$server} = 0;
- $t_innfeed_spooled{$server} = 0;
- $t_innfeed_accepted_size{$server} = 0;
- $t_innfeed_rejected_size{$server} = 0;
- return 1;
- } elsif ($left =~ /(\S+) final seconds (\d+) offered (\d+) accepted (\d+) refused (\d+) rejected (\d+) missing (\d+) spooled (\d+)/o) {
- my ($server, $seconds, $offered, $accepted, $refused, $rejected,
- $missing, $spooled) = ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10);
- $server = lc $server unless $CASE_SENSITIVE;
- $tt_innfeed_seconds{$server} += $seconds;
- $tt_innfeed_offered{$server} += $offered;
- $tt_innfeed_accepted{$server} += $accepted;
- $tt_innfeed_refused{$server} += $refused;
- $tt_innfeed_rejected{$server} += $rejected;
- $tt_innfeed_missing{$server} += $missing;
- $tt_innfeed_spooled{$server} += $spooled;
- $t_innfeed_seconds{$server} = 0;
- $t_innfeed_offered{$server} = 0;
- $t_innfeed_accepted{$server} = 0;
- $t_innfeed_refused{$server} = 0;
- $t_innfeed_rejected{$server} = 0;
- $t_innfeed_missing{$server} = 0;
- $t_innfeed_spooled{$server} = 0;
- return 1;
- }
- # global (real) (new format)
- if ($left =~ /(\S+) global seconds (\d+) offered (\d+) accepted (\d+) refused (\d+) rejected (\d+) missing (\d+) accsize (\d+) rejsize (\d+) spooled (\d+)/o) {
- my ($server, $seconds, $offered, $accepted, $refused, $rejected,
- $missing, $accepted_size, $rejected_size, $spooled) = ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10);
- if ($server eq "ME") {
- return 1;
- }
- $server = lc $server unless $CASE_SENSITIVE;
$innfeed_seconds{$server} += $seconds;
$innfeed_offered{$server} += $offered;
$innfeed_accepted{$server} += $accepted;
@@ -668,31 +597,10 @@
$innfeed_spooled{$server} += $spooled;
$innfeed_accepted_size{$server} += $accepted_size;
$innfeed_rejected_size{$server} += $rejected_size;
- $t_innfeed_seconds{$server} = 0;
- $t_innfeed_offered{$server} = 0;
- $t_innfeed_accepted{$server} = 0;
- $t_innfeed_refused{$server} = 0;
- $t_innfeed_rejected{$server} = 0;
- $t_innfeed_missing{$server} = 0;
- $t_innfeed_spooled{$server} = 0;
- $t_innfeed_accepted_size{$server} = 0;
- $t_innfeed_rejected_size{$server} = 0;
- $tt_innfeed_seconds{$server} = 0;
- $tt_innfeed_offered{$server} = 0;
- $tt_innfeed_accepted{$server} = 0;
- $tt_innfeed_refused{$server} = 0;
- $tt_innfeed_rejected{$server} = 0;
- $tt_innfeed_missing{$server} = 0;
- $tt_innfeed_spooled{$server} = 0;
- $tt_innfeed_accepted_size{$server} = 0;
- $tt_innfeed_rejected_size{$server} = 0;
return 1;
- } elsif ($left =~ /(\S+) global seconds (\d+) offered (\d+) accepted (\d+) refused (\d+) rejected (\d+) missing (\d+)/o) {
+ } elsif ($left =~ /(\S+) final seconds (\d+) offered (\d+) accepted (\d+) refused (\d+) rejected (\d+) missing (\d+) spooled (\d+)/o) {
my ($server, $seconds, $offered, $accepted, $refused, $rejected,
- $missing) = ($1, $2, $3, $4, $5, $6, $7);
- if ($server eq "ME") {
- return 1;
- }
+ $missing, $spooled) = ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10);
$server = lc $server unless $CASE_SENSITIVE;
$innfeed_seconds{$server} += $seconds;
$innfeed_offered{$server} += $offered;
@@ -700,21 +608,7 @@
$innfeed_refused{$server} += $refused;
$innfeed_rejected{$server} += $rejected;
$innfeed_missing{$server} += $missing;
- $innfeed_spooled{$server} += $spooled + $t_innfeed_spooled{$server};
- $t_innfeed_seconds{$server} = 0;
- $t_innfeed_offered{$server} = 0;
- $t_innfeed_accepted{$server} = 0;
- $t_innfeed_refused{$server} = 0;
- $t_innfeed_rejected{$server} = 0;
- $t_innfeed_missing{$server} = 0;
- $t_innfeed_spooled{$server} = 0;
- $tt_innfeed_seconds{$server} = 0;
- $tt_innfeed_offered{$server} = 0;
- $tt_innfeed_accepted{$server} = 0;
- $tt_innfeed_refused{$server} = 0;
- $tt_innfeed_rejected{$server} = 0;
- $tt_innfeed_missing{$server} = 0;
- $tt_innfeed_spooled{$server} = 0;
+ $innfeed_spooled{$server} += $spooled;
return 1;
}
# final (only seconds & spooled)
@@ -1728,44 +1622,6 @@
sub adjust {
my ($first_date, $last_date) = @_;
-
- ## The following lines are commented to avoid the double
- ## count (at the flushlog and at the innfeed flush)
- ## => [2.1.8_8] uncommented because of a problem reported by
- ## matija.grabnar at arnes.si (no output of INNFEED data
- ## from innreport although the data in the logs is correctly
- ## parsed and understood).
-
- if (%t_innfeed_seconds) {
- # do it only of there are no data recorded but temporary
- my $server;
- foreach $server (sort keys (%t_innfeed_seconds)) {
- $innfeed_seconds{$server} += $t_innfeed_seconds{$server};
- $innfeed_offered{$server} += $t_innfeed_offered{$server};
- $innfeed_accepted{$server} += $t_innfeed_accepted{$server};
- $innfeed_refused{$server} += $t_innfeed_refused{$server};
- $innfeed_rejected{$server} += $t_innfeed_rejected{$server};
- $innfeed_missing{$server} += $t_innfeed_missing{$server};
- $innfeed_spooled{$server} += $t_innfeed_spooled{$server};
- $innfeed_accepted_size{$server} += $t_innfeed_accepted_size{$server};
- $innfeed_rejected_size{$server} += $t_innfeed_rejected_size{$server};
- }
- }
- if (%tt_innfeed_seconds) {
- # do it only of there are no data recorded but temporary
- my $server;
- foreach $server (sort keys (%tt_innfeed_seconds)) {
- $innfeed_seconds{$server} += $tt_innfeed_seconds{$server};
- $innfeed_offered{$server} += $tt_innfeed_offered{$server};
- $innfeed_accepted{$server} += $tt_innfeed_accepted{$server};
- $innfeed_refused{$server} += $tt_innfeed_refused{$server};
- $innfeed_rejected{$server} += $tt_innfeed_rejected{$server};
- $innfeed_missing{$server} += $tt_innfeed_missing{$server};
- $innfeed_spooled{$server} += $tt_innfeed_spooled{$server};
- $innfeed_accepted_size{$server} += $tt_innfeed_accepted_size{$server};
- $innfeed_rejected_size{$server} += $tt_innfeed_rejected_size{$server};
- }
- }
my $nnrpd_doit = 0;
my $curious;
More information about the inn-patches
mailing list