En uno de los updates de Perl (5.14) se deprecó una construcción del lenguage que provoca errores en scripts que tengamos desarrollados. Por ejemplo el plugin de Munin apache_processes en su versión para Ubuntu 12.04.
En un script Perl con este error veremos un fragmento de código como:
foreach my $type qw "busy idle" {
print_thresholds("$type$port");
}
De lo que el compilador se está quejando es que el fragmento que contiene los items sobre los que iterar está sintácticamente incorrecto.
Para solucionarlo y que deje de dar ese Warning sólamente debemos envolver con paréntesis dicha parte. Por ejemplo:
foreach my $type (qw "busy idle") {
print_thresholds("$type$port");
}
Grácias a esta simple corrección nuestros scripts Perl volverán a funcionar como antes y por ejemplo podremos utilizar el plugin apache_processes de munin.
Ello se debe a que la construcción munin-node-configure –suggest no se quejará de que aparecen textos extraños en la salida del comando apache_processes.