Kuddel071089 9 Geschrieben 14. März 2018 Melden Geschrieben 14. März 2018 (bearbeitet) Hallo zusammen, ich habe ein Skript geschrieben. welches das Eventloig unser Exchange Server ausliest und prüft, ob die Tägliche BareMetal-Sicherung erfolgreich abgeschlossen wurde. Das Skript läuft jeden Tag um 6 Uhr. Komischerweise werden nicht immer beide Server abgefragt. Mal ja, mal nein. Führe ich den Task dann danach einmal manuell aus, werden wieder beide Server korrekt abgefragt. Hat jemand eine Idee, was das Problem sein könnte? Hier das Skiprt cls $host.ui.RawUI.WindowTitle = "Exchange Backup Check v0.3" #Mailvariablen $Mailempfaenger = "exchange-admins@****.de" $smtpserver = "outlook.****.de" $absender = "Tool-Server@****.de" #Exchange Mailbox-Server abfragen #Verbindung zum Exchange aufbauen New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://Exchange-1/powershell Import-PSSession $ExSession cls $exs= @("Exchange-1","Exchange-2") #Checkschleife foreach($ex in $exs) { #Datum von gestern in Variable $heute = Get-Date -uFormat „%m/%d/%y“ #Erfolgeich-Mail if(Get-WinEvent -LogName Microsoft-Windows-Backup -ComputerName $ex | Where-Object {$_.Id -eq 4 -and ($_.TimeCreated -gt $heute)}) { $mailbody_ex = "C:\mailbody_$ex.txt" $event_ex_erfolgreich = Get-WinEvent -LogName Microsoft-Windows-Backup -ComputerName $ex | Where-Object {$_.Id -eq 4 -and ($_.TimeCreated -gt $heute)} "$($event_ex_erfolgreich.TimeCreated)" | Out-File -FilePath $mailbody_ex -Append "$($event_ex_erfolgreich.Message)" | Out-File -FilePath $mailbody_ex -Append #Auslastung der Partition X in den Mailbody schreiben $auslastung_x = Get-WMIObject Win32_LogicalDisk -filter "name='x:'" -ComputerName $ex | Select freespace | ForEach {$_.name, [math]::truncate($_.freespace / 1GB)} "" | Out-File -FilePath $mailbody_ex -Append "Frei Speicher auf Festplatte X: $auslastung_X GB" | Out-File -FilePath $mailbody_ex -Append $body = Get-Content -Raw $mailbody_ex Send-MailMessage -SmtpServer $smtpserver -to $Mailempfaenger -from $absender -Subject "+++ Exchange Backup: $ex --> SUCCESS +++" -Body $body Remove-Item $mailbody_ex } #Fehler-Mail if(Get-WinEvent -LogName Microsoft-Windows-Backup -ComputerName $ex | Where-Object {$_.Id -eq 5 -and ($_.TimeCreated -gt $heute)}) { $mailbody_ex_error = "C:\mailbody_error_$ex.txt" $event_ex_nicht_erfolgreich = Get-WinEvent -LogName Microsoft-Windows-Backup -ComputerName $ex | Where-Object {$_.Id -eq 5 -and ($_.TimeCreated -gt $heute)} "$($event_ex_nicht_erfolgreich.TimeCreated)" | Out-File -FilePath $mailbody_ex_error -Append "$($event_ex_nicht_erfolgreich.Message)" | Out-File -FilePath $mailbody_ex_error -Append "" | Out-File -FilePath $mailbody_ex_error -Append #Auslastung der Partition X in den Mailbody schreiben $auslastung_x = Get-WMIObject Win32_LogicalDisk -filter "name='x:'" -ComputerName $ex | Select freespace | ForEach {$_.name, [math]::truncate($_.freespace / 1GB)} "" | Out-File -FilePath $mailbody_ex_error -Append "Frei Speicher auf Festplatte X: $auslastung_X GB" | Out-File -FilePath $mailbody_ex_error -Append $body = Get-Content -Raw $mailbody_ex_error #Fehlermeldung, dass das Backup nicht erfolgreich abgeschlossen wurde Send-MailMessage -SmtpServer $smtpserver -to $Mailempfaenger -from $absender -Subject "+++ Exchange Backup: $ex --> ERROR +++" -Body $body Remove-Item $mailbody_ex_error } #Nicht gestartet Mail if(!(Get-WinEvent -LogName Microsoft-Windows-Backup -ComputerName $ex | Where-Object {$_.Id -eq 1 -and ($_.TimeCreated -gt $heute)})) { Send-MailMessage -SmtpServer $smtpserver -to $Mailempfaenger -from $absender -Subject "+++ Exchange Backup: $ex --> ERROR +++" -Body "Das Backup wurde nicht ausgeführt" } } bearbeitet 14. März 2018 von Kuddel071089
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden