Hallo,
meine Subroutine funktioniert soweit aber bei positiven Lauf bekomme ich trotzdem am Ende ein negativen Wert zurück! Was ist mein Fehler???
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
my $code = 'true';
#1 Block Prüfung BackupCheck-Verzeichnis
sub runSqlBackCheck
{
# Flag, ob die Gesamtprüfung positiv ist.
# 0 = nein, d.h. In mindestens einem Fall war keine aktuelle Backup-Datei vorhanden.
# 1 = ja, d.h. es ware stets eine aktuelle Backup-Datei vorhanden.
my $runSQLBakCheck = 1;
print LogDatei '*' x 130, "\n\n";
print LogDatei '#' x 130, "\n";
print LogDatei '#' x 130, "\n\n";
print LogDatei " Backup-Verzeichnischeck beginnt: $tm \n\n\n";
print LogDatei '#' x 130, "\n\n";
#wird erst später aus DOMS.mdb ermittelt, vorerst wird mit Hardcodierten Werten gearbeitet
my (@pjDomain,@pjName);
$pjDomain[0] = "ZITA_PKM";
$pjName [0] = "Phoenix";
$pjDomain[1] = "ZITA_ATF";
$pjName [1] = "ZITA_522";
$pjDomain[2] = "ZITA_ATF";
$pjName [2] = "TLA";
my $numberProjects = $#pjName;
my $backupPath = 'H:\\Perl\\BackupCheck\\_backup';
# Nun wird für jedes TestDirector-Projekt überprüft, ob im
# Backup-Bereich des Servers ein aktuelles Backup vorliegt.
for (my $i = 0; $i <= $numberProjects; $i++)
{
my $bkupDirectory = $backupPath . "\\" . $pjDomain[$i] . "_" . $pjName[$i] . "_db";
print LogDatei '#' x 130, "\n";
print LogDatei " " . $tm . "\n \n Prüfe Existenz von " . $bkupDirectory . "\n";
print LogDatei '#' x 130, "\n";
if ( -e $bkupDirectory )
{
print LogDatei "Verzeichnis ist vorhanden!\n";
opendir(DIR,$bkupDirectory);
my @verzeichnisse = grep{-f $bkupDirectory .'/'.$_}readdir(DIR);
my $bool = 0;
for my $file(@verzeichnisse)
{
if(existsActBackup($bkupDirectory.'/'.$file,1))
{
$bool = 1;
print LogDatei '#' x 130, "\n";
print LogDatei "\n ****************************Backup vorhanden***************************** \n" . $bool . " Backupdatei gefunden!\n";
print LogDatei $file . "\n \n" . @verzeichnisse . " Backupdateien im Verzeichnis " . $bkupDirectory . " vorhanden!";
print LogDatei '#' x 130, "\n";
}
}
if ($bool == 1)
{
print LogDatei '*' x 130, "\n";
print LogDatei "INFO : Es besteht in dem Verzeichnis mind. eine aktuelle Backupdatei!\n";
print LogDatei '*' x 130, "\n\n\n";
}
else
{
print LogDatei '*' x 130, "\n";
print LogDatei "**********ERROR: Es besteht in dem Verzeichnis keine aktuelle Backupdatei!************\n";
print LogDatei '*' x 130, "\n\n\n";
$runSQLBakCheck = 0;
}
## Hier wird nach Durchlauf der Kontrolle ein Statment abgegeben wenn Error auftrat!
unless($runSQLBakCheck)
{
print LogDatei '#' x 130, "\n\n";
print LogDatei " ********** ERROR: Ineinem bzw. mehreren Backupverzeichnissen liegen keine aktuellen Backupdateien vor!! Bitte prüfen!!! ************\n\n";
print LogDatei '#' x 130, "\n";
print LogDatei '#' x 130, "\n\n\n";
}
}
else
{
print LogDatei "ERROR: Das zu prüfende Backupverzeichnis wurde nicht gefunden! Bitte prüfen!!\n";
} # end of: if ( -e $bkupDirectory )
} # end of: for (my $i = 0; $i <= $numberProjects; $i++)
} # end of: sub runSqlBackCheck
Gruss Leissi