Fix storcli parsing issues for controller information

This commit is contained in:
Georg Schönberger
2021-03-22 06:53:38 +01:00
parent 98712faba8
commit 32075f62ef

View File

@ -234,7 +234,7 @@ sub getControllerInfo{
my $command = '';
$storcli =~ /^(.*)\/c[0-9]+/;
$command = $1.'/c'.$CONTROLLER.' show';
$command = $1.'/c'.$CONTROLLER.' show all';
push @{$commands_a}, $command;
my @output = `$command`;
@ -245,7 +245,7 @@ sub getControllerInfo{
my %foundController_h;
foreach my $line(@output){
if($line =~ /\:/){
my @lineVals = split(':', $line);
my @lineVals = split('=', $line);
$lineVals[0] =~ s/^\s+|\s+$//g;
$lineVals[1] =~ s/^\s+|\s+$//g;
$foundController_h{$lineVals[0]} = $lineVals[1];
@ -264,7 +264,7 @@ sub getControllerStatus{
my %foundController = %{(shift)};
my $status = '';
foreach my $key (%foundController){
if($key eq 'ROC temperature'){
if($key eq 'ROC temperature(Degree Celsius)'){
$foundController{$key} =~ /^([0-9]+\.?[0-9]+).*$/;
if(defined($1)){
if(!(checkThreshs($1, $C_TEMP_CRITICAL))){
@ -1119,13 +1119,13 @@ sub getVerboseString{
}
if($VERBOSITY == 3){
$verb_str .= "CTR information:\n";
$verb_str .= "\t- ".$controllerToCheck{'Product Name'}.":\n";
$verb_str .= "\t\t- ".'Serial No='.$controllerToCheck{'Serial No'}."\n";
$verb_str .= "\t\t- ".'FW Package Build='.$controllerToCheck{'FW Package Build'}."\n";
$verb_str .= "\t\t- ".'Mfg. Date='.$controllerToCheck{'Mfg. Date'}."\n";
$verb_str .= "\t- ".$controllerToCheck{'Model'}.":\n";
$verb_str .= "\t\t- ".'Serial Number='.$controllerToCheck{'Serial Number'}."\n";
$verb_str .= "\t\t- ".'Firmware Package Build='.$controllerToCheck{'Firmware Package Build'}."\n";
$verb_str .= "\t\t- ".'Mfg Date='.$controllerToCheck{'Mfg Date'}."\n";
$verb_str .= "\t\t- ".'Revision No='.$controllerToCheck{'Revision No'}."\n";
$verb_str .= "\t\t- ".'BIOS Version='.$controllerToCheck{'BIOS Version'}."\n";
$verb_str .= "\t\t- ".'FW Version='.$controllerToCheck{'FW Version'}."\n";
$verb_str .= "\t\t- ".'Bios Version='.$controllerToCheck{'Bios Version'}."\n";
$verb_str .= "\t\t- ".'Firmware Version='.$controllerToCheck{'Firmware Version'}."\n";
if(exists($controllerToCheck{'ROC temperature'})){
$verb_str .= "\t\t- ".'ROC temperature='.$controllerToCheck{'ROC temperature'}."\n";
}