xtragood 10 Geschrieben 14. September 2005 Melden Teilen Geschrieben 14. September 2005 Hi Leutz, ich such ne einfache Möglichkeit jemanden per Mail über das Wachsen eines bestimmten Files über eine gesetzte Grenze zu benachrichtigen. Jemand ein Ass im Ärmel? Gruß, xtra. Zitieren Link zu diesem Kommentar
Operator 10 Geschrieben 15. September 2005 Melden Teilen Geschrieben 15. September 2005 Hi xtra, reicht Dir ein Anmeldescript, daß einmal am Tag die betreffende Datei überprüft? Dann sollte Dir das Script von mir weiterhelfen... war grad mal fleißig. On Error Resume Next ' Absender FromEmail = "Operator <andre@domain.de>" ' Empfänger ToEmail = "user@domain.de" ' IP oder Hostname des Mailservers, der SMTP entgegennimmt SMTPServer = "10.10.10.10" ' Zu überwachende Datei, Netzwerkpfade als UNC Pfad eintragen FileName = "c:\datei" ' Warngröße in Bytes WarnSize = 1000000 Set objEmail = CreateObject("CDO.Message") Set objShell = CreateObject("Wscript.Shell") Set objFile = CreateObject("Scripting.FileSystemObject") Set file = objFile.GetFile(FileName) Size = file.size If Size > WarnSize Then With objEmail .From = FromEmail .To = ToEmail With .Configuration.Fields .Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 .Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = SMTPServer .Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 .Update End With .Subject = "Datei " & FileName & " hat Maximalgröße überschritten..." .HTMLbody = "Die Datei " & FileName & " hat eine Größe von " & file.size & " Bytes. Warnschwelle liegt bei " & WarnSize & " Bytes." .Send End With End If Wenn permanent im Hintergrund geprüft werden soll, ließe sich das Script auch in einer Schleife aufrufen. Sag Bescheid, dann füg ich das hinzu... Gruß Andre Zitieren Link zu diesem Kommentar
xtragood 10 Geschrieben 15. September 2005 Autor Melden Teilen Geschrieben 15. September 2005 Wenn permanent im Hintergrund geprüft werden soll, ließe sich das Script auch in einer Schleife aufrufen. Sag Bescheid, dann füg ich das hinzu... Vielleicht jede Stunde? (würde das sonst mit Scheduled Tasks machen) Geht das auch mit 2 Files unterschiedlicher Größe? Zur Erklärung: Wir haben Exchange Standard mit 16GB Datenbankgröße. Ich möchte die Files priv1.edb und priv1.stm überwachen, so dass ich rechtzeitig reagieren kann, wenn sie zulaufen... Gruß, xtra. Zitieren Link zu diesem Kommentar
Operator 10 Geschrieben 15. September 2005 Melden Teilen Geschrieben 15. September 2005 Wenn Du's jede Stunde aufrufst, würd ichs über Scheduled Tasks aufrufen, ansonsten hast Du immer nen wscript.exe Task im Hintergrund. Im Minutenbereich würd ich den durchlaufen lassen, aber bei ner Stunde ist Taskplaner wohl besser. Du kannst das Script ja duplizieren und verpasst beiden andere Parameter. Und die beiden Scripts rufst Du dann parallel auf. Dann kannst Du auch 2 Dateien unterschiedlicher MaxGröße beobachten. Alternativ könnte man Kommandozeilenparameter arbeiten, aber solange es nur 2 Files sind lohnt das kaum. Gruß Andre Zitieren Link zu diesem Kommentar
xtragood 10 Geschrieben 15. September 2005 Autor Melden Teilen Geschrieben 15. September 2005 Hi nochmal, Operator... das Problem ist, dass die Files unterschiedlich wachsen können und nur die Gesamtgröße beider Files zählt. Diese wollte ich abfragen. Wenn diese die Gesamtgröße von 16106127360 Bytes überschreitet, soll eine Mail ausgegeben werden. Ist so etwas schierig zu handeln, weißt du? Gruß, xtra. Zitieren Link zu diesem Kommentar
Operator 10 Geschrieben 15. September 2005 Melden Teilen Geschrieben 15. September 2005 Hi, ist jetzt ungetestet, da ich wenig Zeit hab. Aber versuchs mal :) On Error Resume Next ' Absender FromEmail = "Operator <andre@domain.de>" ' Empfänger ToEmail = "user@domain.de" ' IP oder Hostname des Mailservers, der SMTP entgegennimmt SMTPServer = "10.10.10.10" ' Zu überwachende Datei, Netzwerkpfade als UNC Pfad eintragen FileName1 = "c:\datei1" FileName2 = "c:\datei2" ' Warngröße in Bytes WarnSize = 1000000 Set objEmail = CreateObject("CDO.Message") Set objShell = CreateObject("Wscript.Shell") Set objFile = CreateObject("Scripting.FileSystemObject") Set file1 = objFile.GetFile(FileName1) Set file2 = objFile.GetFile(FileName2) Size1 = file1.size Size2 = file2.size If Size1 + Size2 > WarnSize Then With objEmail .From = FromEmail .To = ToEmail With .Configuration.Fields .Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 .Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = SMTPServer .Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 .Update End With .Subject = "Datei " & FileName & " hat Maximalgröße überschritten..." .HTMLbody = "Die Datei " & FileName & " hat eine Größe von " & file.size & " Bytes. Warnschwelle liegt bei " & WarnSize & " Bytes." .Send End With End If Zitieren Link zu diesem Kommentar
xtragood 10 Geschrieben 15. September 2005 Autor Melden Teilen Geschrieben 15. September 2005 Hi Operator, funktioniert teilweise, danke schonmal. Die E-Mail kommt aber ohne HTMLbody an... Gruß, xtra. Zitieren Link zu diesem Kommentar
Operator 10 Geschrieben 15. September 2005 Melden Teilen Geschrieben 15. September 2005 War bei mir kein Problem... Kann das vielleicht noch jemand anderes bestätigen? Daß die Mail nicht im HTML Format ankommt ist klar, weil ich ja auch keine HTML Tags eingefügt hab. Gruß Andre Zitieren Link zu diesem Kommentar
sven1810 10 Geschrieben 15. September 2005 Melden Teilen Geschrieben 15. September 2005 Hi, danke für das Script wenn ich Zeit habe werde ich es auch mal testen. Hätte ich gut gebrauchen können da bei uns ein Mitarbeiter gerade seine outlook.pst Datei über 2gig gebracht hat. Hat mir ne menge Arbeit gemacht alles wieder zum laufen zu bringen. Aber Daten gingen trotzdem dabei verloren. gruß Sven Zitieren Link zu diesem Kommentar
sven1810 10 Geschrieben 26. September 2005 Melden Teilen Geschrieben 26. September 2005 Hi, danke für dein Script es funktioniert, ich habe nur einen kleinen Fehler im letzten Script gefunden .HTMLbody = "Die Datei " & FileName & " hat eine Größe von " & file.size & " Bytes. Warnschwelle liegt bei " & WarnSize & " Bytes." Damit klappts :) .HTMLbody = "Die Datei " & FileName1 & " hat eine Größe von " & file1.size & " Bytes. Warnschwelle liegt bei " & WarnSize & " Bytes." Wie bekomme ich denn jetzt den Usernamen von dem sich Anmeldenen Mitarbeiter mit in das Skript? Gruß Sven Zitieren Link zu diesem Kommentar
Operator 10 Geschrieben 26. September 2005 Melden Teilen Geschrieben 26. September 2005 Damit: Set objShell = CreateObject("Wscript.Shell") username = objShell.ExpandEnvironmentStrings("%username%") wscript.echo username Gruß Andre Zitieren Link zu diesem Kommentar
xtragood 10 Geschrieben 26. September 2005 Autor Melden Teilen Geschrieben 26. September 2005 Super, jetzt funzts... Gruß, xtra. Zitieren Link zu diesem Kommentar
sven1810 10 Geschrieben 26. September 2005 Melden Teilen Geschrieben 26. September 2005 Hi, danke so geht´s. Was ist das was du da geskriptest hast? Kann ich mir darüber ein Buch kaufen oder wie kann ich mir das beibringen? Gruß Sven Zitieren Link zu diesem Kommentar
micha42 29 Geschrieben 26. September 2005 Melden Teilen Geschrieben 26. September 2005 Ja, da gibt s prima Bücher: http://www.mcseboard.de/showthread.php?t=71275 Zitieren Link zu diesem Kommentar
Operator 10 Geschrieben 26. September 2005 Melden Teilen Geschrieben 26. September 2005 Hi, das ganze nennt sich Visual Basic Script (VBScript) und avanciert so langsam zu meiner Lieblingsscriptsprache zur Administration ;-) Die Links von micha42 sollten Dir weiterhelfen ein gutes Buch zu finden. Wie gut die sind kann ich Dir allerdings nicht sagen, da ich selber keins besitze. Gruß Andre Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.