Bonjour

Je tente de me connecter avec le module Net::MySQL j'ai la synthaxe suivante

#!/usr/bin/perl -w

use strict;
use IO:ipe;
use Net::MySQL;
use Proc::Fork;
use POSIX qw(strftime);
use POSIX ":sys_wait_h";


my $mysql = Net::MySQL->new(
# hostname => 'localhost',
unixsocket => '/tmp/mysql.sock',
database => 'serverwatch',
user => 'serverwatch',
password => 'serverwatch'
);



child {
my $query = "SELECT * FROM `scheduled` WHERE id=$ARGV[0]";
$mysql->query($query);

if ($mysql->has_selected_record) {

my $a_record_iterator = $mysql->create_record_iterator;
my $record = $a_record_iterator->each;
$query = "SELECT * FROM `task_list` WHERE id=$record->[3]";

$mysql->query($query);

if ($mysql->has_selected_record) {
$a_record_iterator = $mysql->create_record_iterator;
my $record2 = $a_record_iterator->each;

my $remote = $record2->[3];
my $ret = "";
my $cmd = "";
my $query = "SELECT * FROM `host_list` WHERE id=$record->[2]";
$mysql->query($query);
$a_record_iterator = $mysql->create_record_iterator;
my $record4 = $a_record_iterator->each;

if($remote != -1) {
my $query = "SELECT * FROM `host_list` WHERE id=$record2->[3]";
$mysql->query($query);
$a_record_iterator = $mysql->create_record_iterator;
my $record3 = $a_record_iterator->each;


$cmd = "$record2->[2] $record4->[1] $record3->[1] $record->[4]\n";
$ret = `$record2->[2] $record4->[1] $record3->[1] $record->[4]`;
} else {

$ret = `$record2->[2] $record4->[1] $record->[4]`;

$cmd = "$record2->[2] $record4->[1] $record->[4]\n";

}
chomp $ret;
my @ret_tab = split(/\|/, $ret);

my $ret_code = 1;
$ret_code = 0 if ($ret_tab[0] eq "OK");
$ret_code = 1 if ($ret_tab[0] eq "ERROR");
$ret_code = 2 if ($ret_tab[0] eq "WARNING");

# my $time = strftime "%m-%e-%Y %H:%M:%S", localtime;
my $time = time;

$ret_tab[1] =~ s/\'/\\\'/g;
$ret_tab[1] =~ s/\;/\\\;/g;
$ret_tab[1] =~ s/\$/\\\$/g;

$query = " INSERT INTO `log` ( `id` , `scheduled` , `date` , `return_code` , `return_msg`, `return_value`, `cmd` ) VALUES ('', '$ARGV[0]', '$time', '$ret_code', '$ret_tab[1]', '$ret_tab[2]', '$cmd');";
print $query."\n";
$mysql->query($query);
# print $ret."\n";


my $query = "SELECT * FROM `notif_list` WHERE id=$record->[7]";
$mysql->query($query);
print $mysql;
$a_record_iterator = $mysql->create_record_iterator;
my $record5 = $a_record_iterator->each;

if(defined $record5 && $record5->[0] > 0) {
my $notif = $record5->[1]." \"".$record2->[1]."\" \"".$record4->[1]."\" \"".$ret_code."\" \"".$ret_tab[1]."\" \"".$time."\" \"".$record->[9]."\" \"".$record->[0]."\"";;
# print $notif."\n";
`$notif`;
}
}
}
};


lorsque j'execute le script la variable $notif ne retourne rien ...

Je sais que l'accès à une base en utilisant le use DBI fonctionne avec le perl sans problème ... par contre en passant par le module Net rien ne se passe ...

Par ailleurs je ne sais pas où je peux trouver les signes d'erreur

PS : j'execute le script en commande pas par le web