Inneport and some cosmetic bug in INN 2.5.1

Julien ÉLIE julien at trigofacile.com
Thu Oct 29 20:54:13 UTC 2009


Hi Petr,

> If my IPv6 peer has no FQDN record in incoming.conf (but only IPv6 address), innreport shows incorrect information - incoming 
> feeds and volume.
>
>    Incoming Volume (INN):
>    Server                AcceptVol DupVol  RejVol  TotalVol %Acc Vol/Art
>    1 2001                  39.0 MB 0.0 KB 149.3 KB  39.1 MB  99% 39.7 KB
>
> Only "2001".
>
>
> Perhaps the problem after 576 line in innreport_inn.pm, but I do not very well understand perl regexp. :(

I think the problem comes from the "$hostname:$channel" split.
Could you please try that patch:

--- innreport_inn.pm    (révision 8665)
+++ innreport_inn.pm    (copie de travail)
@@ -2185,17 +2185,18 @@

     # Sum all incoming traffic for each full server.
     foreach $key (keys (%innd_connect)) {
-      ($hostname, $channel) = split(':', $key);
-      $innd_seconds_sum{$hostname} += ($innd_seconds{$key} || 0);
-      $innd_connect_sum{$hostname} += ($innd_connect{$key} || 0);
-      $innd_offered_sum{$hostname} += ($innd_offered{$key} || 0);
-      $innd_accepted_sum{$hostname} += ($innd_accepted{$key} || 0);
-      $innd_refused_sum{$hostname} += ($innd_refused{$key} || 0);
-      $innd_rejected_sum{$hostname} += ($innd_rejected{$key} || 0);
-      $innd_stored_size_sum{$hostname} += ($innd_stored_size{$key} || 0);
-      $innd_duplicated_size_sum{$hostname} += ($innd_duplicated_size{$key} || 0);
-      $innd_offered_size_sum{$hostname} += ($innd_offered_size{$key} || 0);
-      $innd_rejected_size_sum{$hostname} += ($innd_rejected_size{$key} || 0);
+      if ($key =~ /^(\S+):\d+$/) {
+        $innd_seconds_sum{$1} += ($innd_seconds{$key} || 0);
+        $innd_connect_sum{$1} += ($innd_connect{$key} || 0);
+        $innd_offered_sum{$1} += ($innd_offered{$key} || 0);
+        $innd_accepted_sum{$1} += ($innd_accepted{$key} || 0);
+        $innd_refused_sum{$1} += ($innd_refused{$key} || 0);
+        $innd_rejected_sum{$1} += ($innd_rejected{$key} || 0);
+        $innd_stored_size_sum{$1} += ($innd_stored_size{$key} || 0);
+        $innd_duplicated_size_sum{$1} += ($innd_duplicated_size{$key} || 0);
+        $innd_offered_size_sum{$1} += ($innd_offered_size{$key} || 0);
+        $innd_rejected_size_sum{$1} += ($innd_rejected_size{$key} || 0);
+      }
     }

     # adjust min/max of innd timer stats.

-- 
Julien ÉLIE

« -- Dis, je crois avoir entendu parler gothique par là !
  -- Tu as des visions, Pamplemus ! » (Astérix) 




More information about the inn-workers mailing list