C
Cyrus
One more thing to add is a system has multiple disks, & I have more
than 200 systems to check for system, disk & disk status. to make it
more clear if script finds an error say on system-X with disk 2 &
status No-In-Service it notify user and go to the next system, when it
hits same system again it checks to see if this is a same system if so
if this is a same disk if this is same system & same disk & same status
then don't notify user simply go to the next till the status of the
disk gets change when it hits that system again!
I'm new in this group, I would like to ask all of the Perl experts out
there, if any one knows how to prevent a duplicated entry in array of
the hash: here is what I need to do. The script periodically check for
disk status if there is an error it adds it to array of the hash with
keys & value, what I need is before it push/append it to the array of
the hash it check to see if the key & value exists if not then
push/append it else do other stuff or next....I need to check for all
keys & value
Thanks in advance & hop I can get an answer from one of you guys..
Cheers
Here is a portion of the code:
While (<>) {
my $sh = $c->show_disk();
foreach my $sys (@sys_arry) {
foreach my $el (@$sh) {
if ($el->{'status'} ne "OK")
{
# Here I know I should check to see if the keys & value exits
but don't know how!!
push @DiskErr, {sys=>$sys, disk=>$el->{'id'},
status=>$el->{'status'}};
} else
{
print "$sys: Status OK\n";
}
}
}
}
than 200 systems to check for system, disk & disk status. to make it
more clear if script finds an error say on system-X with disk 2 &
status No-In-Service it notify user and go to the next system, when it
hits same system again it checks to see if this is a same system if so
if this is a same disk if this is same system & same disk & same status
then don't notify user simply go to the next till the status of the
disk gets change when it hits that system again!
I'm new in this group, I would like to ask all of the Perl experts out
there, if any one knows how to prevent a duplicated entry in array of
the hash: here is what I need to do. The script periodically check for
disk status if there is an error it adds it to array of the hash with
keys & value, what I need is before it push/append it to the array of
the hash it check to see if the key & value exists if not then
push/append it else do other stuff or next....I need to check for all
keys & value
Thanks in advance & hop I can get an answer from one of you guys..
Cheers
Here is a portion of the code:
While (<>) {
my $sh = $c->show_disk();
foreach my $sys (@sys_arry) {
foreach my $el (@$sh) {
if ($el->{'status'} ne "OK")
{
# Here I know I should check to see if the keys & value exits
but don't know how!!
push @DiskErr, {sys=>$sys, disk=>$el->{'id'},
status=>$el->{'status'}};
} else
{
print "$sys: Status OK\n";
}
}
}
}