chris123
Goto Top

Aufgabe nur zu bestimmten Zeitraum

Hallo zusammen,

ich schraube gerade an einer Aufgabe, welche die Replikation (Hyper-V) von unseren Servern überwacht. Soweit ist das auch kein Problem. Sobald die Ereignis ID 32315 generiert wird, verschickt die Aufgabe eine Mail mit dem Hinweis, dass die Replikation einen Fehler hat.

Nun aber mein Problem: Nachts kommt es grundsätzlich während der Sicherung zu einem kurzen Ausfall der Replikation. Dementsprechend würde ich auch jede Nacht eine Mail erhalten. Gibt es eine Möglichkeit eine Aufgabe so zu konfigurieren, dass sie nur zu einem bestimmten Zeitpunkt ausgeführt wird? Oder muss ich in dem Fall einen ganz anderen Lösungsansatz wählen?

OS: Server 2012

Vielen Dank!
Chris

Content-Key: 219656

Url: https://administrator.de/contentid/219656

Printed on: April 24, 2024 at 13:04 o'clock

Member: falscher-sperrstatus
falscher-sperrstatus Oct 17, 2013 at 12:43:05 (UTC)
Goto Top
Hi Chris,

das kommt darauf an, wie die Aufgabe gestrickt ist ist es ein Programm, dann Check den Zeitstempel.

Beste Grüße,

Christian
certified IT
Member: chris123
chris123 Oct 17, 2013 updated at 12:46:46 (UTC)
Goto Top
Danke für die schnelle Antwort!

Ausgeführt wird die Aufgabe durch ein PS-Skript.
Member: falscher-sperrstatus
falscher-sperrstatus Oct 17, 2013 at 12:48:10 (UTC)
Goto Top
Gerne, das sollte dann einfach per Zeitcheck gehen. Du musst nur eine Routine schreiben, wenn Zeit zwischen 22 und 04 Uhr (Bspw) => exit oder vice versa.
Member: chris123
chris123 Oct 17, 2013 at 12:52:01 (UTC)
Goto Top
Ich habe mir schon so ähnliches gedacht! Nur leider hört es da mit meinen Fähigkeiten auf!

Ich habe ein ziemlich banales PS-Skript, welches einfach nur ein Mail versendet. Wenn ich das jetzt richtig verstehe, muss ich in dieses Skript vorher eine Routine setzen, welche die Zeit prüft. Aber wie? Ich habe keinen wirkliche Ahnung wie die Syntax da aussehen muss!
Member: falscher-sperrstatus
falscher-sperrstatus Oct 17, 2013 at 12:54:51 (UTC)
Goto Top
Hallo chris,

im Grunde ist auch die Abfrage nicht sonderlich schwerer, if, else sagt dir was? Dazu fragst du ja die eventid ab, in dieser If Abfrage prüfst du nun noch den Zeitstempel (nur Uhrzeit daraus) gegen Anfang und Endzeit des Backups und schon hast du, was du willst.
Member: chris123
chris123 Oct 17, 2013 at 13:40:07 (UTC)
Goto Top
Ich glaube ich bin viel schlichter daran gegangen. Ich habe einfach eine Aufgabe (Taskplaner) erstellt, die bei einem Ereignis ausgelöst wird und dann eben nur das Mail-Skript startet. Insofern kommt bei mir nur ein ganz einfaches Skript zum tragen:

$EmailFrom = “xyz@domain.de”

$EmailTo = “zxy@domain.de”

$Subject = “Replikationsfehler”

$Body = “Replikationsfehler”

$SMTPServer = “192.168.5.1”

$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 25)

$SMTPClient.EnableSsl = $false

$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)

und letztlich muss gar nicht die Zeit vom Backup abgefragt werden. Eigentlich reicht es, wenn die Aufgabe oder das Skript zwischen 00:00 und 06:00 nicht gestartet wird.
Member: falscher-sperrstatus
falscher-sperrstatus Oct 17, 2013 at 13:44:03 (UTC)
Goto Top
Das kommt auf das Design an. Aber ja, so geht es auch.
Member: chris123
chris123 Oct 17, 2013 at 13:45:00 (UTC)
Goto Top
OK, aber wie bekomme ich jetzt die Abfrage da rein?
Member: falscher-sperrstatus
falscher-sperrstatus Oct 17, 2013 at 13:47:39 (UTC)
Goto Top
if $time (zeit formatieren) nicht kleiner 4 oder nicht größer 10
Feuer frei
Member: chris123
chris123 Oct 17, 2013 at 14:15:58 (UTC)
Goto Top
OK, ich bin wahrscheinlich einfach zu schlicht dafür. Aber trotzdem Danke!
Member: falscher-sperrstatus
falscher-sperrstatus Oct 17, 2013 updated at 14:50:14 (UTC)
Goto Top
$time = Get-Date -uformat %T

if($time -lt "04:00:00" -or $time -gt "22:00:00")
{
obiges
}

vermutlich wirklich zu einfach.
Member: chris123
chris123 Oct 17, 2013 at 15:16:45 (UTC)
Goto Top
Beneidenswert!

Vielen Dank!
Member: falscher-sperrstatus
falscher-sperrstatus Oct 17, 2013 at 15:21:51 (UTC)
Goto Top
Dann bitte auf gelöst.