cps_ plugin autodetection is broken

Bug #1066942 reported by Tim Bishop on 2012-10-15
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
munin (Ubuntu)
Undecided
Unassigned
Precise
Medium
Unassigned

Bug Description

Summary: Please apply https://github.com/munin-monitoring/munin/commit/3281ce622bbd5dbf2c0ac5be8c951cb9a488e47a to the munin-node package.

I'm using these packages:

ii munin-common 1.4.6-3ubuntu3.1 network-wide graphing framework (common)
ii munin-node 1.4.6-3ubuntu3.1 network-wide graphing framework (node)

On 12.04.1 (precise).

The problem is with the cps_ plugin. It suggests the following plugins:

# /usr/share/munin/plugins/cps_ suggest
cps_1.1.1.1_21
cps_1.1.1.1_80
cps_1.1.1.1_873
cps_2.2.2.2_21
cps_2.2.2.2_80
cps_2.2.2.2_873

When these get created by munin-node-configure I end up with the following:

# ls -la /etc/munin/plugins/cps_cps_212.219.56.18*
lrwxrwxrwx 1 root root 29 Aug 18 18:37 /etc/munin/plugins/cps_cps_1.1.1.1_21 -> /usr/share/munin/plugins/cps_
lrwxrwxrwx 1 root root 29 Aug 18 18:37 /etc/munin/plugins/cps_cps_1.1.1.1_80 -> /usr/share/munin/plugins/cps_
lrwxrwxrwx 1 root root 29 Aug 18 18:37 /etc/munin/plugins/cps_cps_1.1.1.1_873 -> /usr/share/munin/plugins/cps_
lrwxrwxrwx 1 root root 29 Oct 15 16:26 /etc/munin/plugins/cps_cps_2.2.2.2_21 -> /usr/share/munin/plugins/cps_
lrwxrwxrwx 1 root root 29 Aug 18 18:37 /etc/munin/plugins/cps_cps_2.2.2.2_80 -> /usr/share/munin/plugins/cps_
lrwxrwxrwx 1 root root 29 Oct 15 16:26 /etc/munin/plugins/cps_cps_2.2.2.2_873 -> /usr/share/munin/plugins/cps_

The code in cps_ parses $0:

unless ($0 =~ /cps(?:_([^_]+)|)_(.+)\s*$/) {
    die "Could not parse name $0.\n";
}

my $vip = $1;
my $port = $2;

As you can see, the cps_cps_ should be cps_. It's doubling this up which breaks the regex and therefore breaks the plugin.

The fix is quite simple:

--- cps_.orig 2012-10-15 16:14:14.580595524 +0100
+++ cps_ 2012-10-15 16:14:25.092431645 +0100
@@ -103,7 +103,7 @@

     foreach my $vip (sort keys %{$ipvs}) {
        foreach my $port (sort keys %{$ipvs->{$vip}}) {
- print "cps_${vip}_$port\n";
+ print "${vip}_$port\n";
        }
     }
     exit 0;

This creates the plugins with a single cps_ at the start and then everything works as expected.

The fix can also be seen upstream here:

https://github.com/munin-monitoring/munin/commit/3281ce622bbd5dbf2c0ac5be8c951cb9a488e47a

It'd be great if this fix could be applied.

Related branches

James Page (james-page) on 2012-11-15
Changed in munin (Ubuntu):
importance: Undecided → Medium
status: New → Triaged
Chris J Arges (arges) wrote :

This is fixed in the trusty and utopic versions already. Therefore this patch needs to go through the SRU process as defined here:
https://wiki.ubuntu.com/StableReleaseUpdates

The patch looks pretty good, all that's needed to do is fill out the SRU template; and someone can sponsor that into precise.

Thanks!

Changed in munin (Ubuntu):
status: Triaged → Fix Released
Changed in munin (Ubuntu Precise):
status: New → Triaged
importance: Undecided → Medium
Changed in munin (Ubuntu):
importance: Medium → Undecided
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers