Nbar en perl, relation tabl hash & var inconu
DB601
Messages postés
14
Statut
Membre
-
DB601 Messages postés 14 Statut Membre -
DB601 Messages postés 14 Statut Membre -
Bonjour à tous,
voilà je suis entrain de faire un script en perl pour avoir automatiquement les protocoles comme le fait nbar dans snmpwal dans cisco
j'ai défini une table de hachage :
et Fan est une variable d'un tableau @fan
voilà ma fonction get_fan
et donc j'ai extrait les valeurs de la table de hachage dans un tableau que j'ai appelé
et donc moi par exemple je veux afficher le numéro donc Fan_4 par exemple et le nom du protocole qui lui correspond avec les info spécifique de chaque fan
et là j'ai mis une boucle :
Le problème c'est que soit j'ai le J qui ne change pas pour tous les i, et j'ai essayé de faire autrement et là j'avais le nom mais avec le mauvais OID et le mauvais fan-num
est_ce que quelqu'un peut m'aider!!
merci d'avance
voilà je suis entrain de faire un script en perl pour avoir automatiquement les protocoles comme le fait nbar dans snmpwal dans cisco
j'ai défini une table de hachage :
%Nbar =('Fan_1' => 'ftp',
'Fan_2' => 'http',
'Fan_3' => 'egp',
'Fan_4' => 'gre',
'Fan_5' => 'icmp',
'Fan_6' => 'eigrp',
'Fan_7' => 'ipinip',
'Fan_8' => 'ipsec',
'Fan_9' => 'ospf',
'Fan_10' => 'bgp',);
et Fan est une variable d'un tableau @fan
voilà ma fonction get_fan
sub get_fan() {
$ciscoEnvMonFanState='.1.3.6.1.4.1.9.9.244.1.2.1.1.3.1';
my $k;
my @fan;
my $num=0;
start_snmp();
my @columns = ($ciscoEnvMonFanState);
$iffan = $session->get_entries(
-columns => \@columns,
);
unless (defined($iffan)) {
printf("Fan not fountd. ERROR: %s.\n", $session->error);
}
foreach $k(keys %$iffan) {
$num++;
print " Fan_$num: $k \n";
push (@fan, $k );
}
$session->close();
return @fan;
}
@fan=get_fan();
et donc j'ai extrait les valeurs de la table de hachage dans un tableau que j'ai appelé
@nomNbar= values(%Nbar);
et donc moi par exemple je veux afficher le numéro donc Fan_4 par exemple et le nom du protocole qui lui correspond avec les info spécifique de chaque fan
et là j'ai mis une boucle :
$num=o;
$j=0;
Foreach $i (@fan) {
$num++;
$j++;
#donc dans cette ligne je veux afficher genre Fan_1 FTP
print XML "\t\t\t\t<item type=\"4\" key=\"$i _ $nomNbar[j] \" value_type=\"3\">\n";
#Là y a pas de soucis
print XML "\t\t\t\t\t<description>FAN $num _status</description>\n";
#et là le OID approprié à chaque nomNbar
print XML "\t\t\t\t\t<snmp_oid>$i</snmp_oid>\n";
}
Le problème c'est que soit j'ai le J qui ne change pas pour tous les i, et j'ai essayé de faire autrement et là j'avais le nom mais avec le mauvais OID et le mauvais fan-num
est_ce que quelqu'un peut m'aider!!
merci d'avance
A voir également:
- Nbar en perl, relation tabl hash & var inconu
- Appeler en inconu - Guide
- Vous allez etre mis en relation avec votre correspondant ✓ - Forum Mobile
- La base de données de sécurité du serveur n'a pas de compte d'ordinateur pour la relation - Forum Windows serveur
- Error 2002 (hy000): can't connect to local mysql server through socket '/var/run/mysqld/mysqld.sock' (2) ✓ - Forum Linux / Unix
- Var matin gratuit - Télécharger - Médias et Actualité