attituder
Goto Top

Logdatei von Scheduler Task auslesen und bei Fehler EMail versenden

Hi,

leider bin ich durch die Suchfunktion auf keine Lösung gekommen. Auch google konnte mir nicht weiterhelfen. Es geht um folgendes Problem:

Es kommt ab und zu vor, dass auf unseren Windows XP PC's eingestellte Tasks nicht ausgeführt werden. Diese Information ist auch in der "SchedLgU.Txt" vorhanden.

Meine Frage besteht nun darin, ob es eine Möglichkeit gibt, diese Logfile auszulesen (Es sollte nur das aktuelle Datum ausgelesen werden) und bei einem Fehler eine E-Mail z.B. über "BMail" zu versendet?

Diese E-Mail sollte im Subject den Namen des Tasks und des Computers enthalten.

Hoffe, Ihr könnt mir da weiterhelfen.

Vielen Dank schon mal im voraus.

MfG
Atti

Content-ID: 173763

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

Ausgedruckt am: 22.11.2024 um 18:11 Uhr

Skyemugen
Skyemugen 27.09.2011 um 14:06:03 Uhr
Goto Top
Aloha,

ansich sollte das zu lösen sein, nur meine Frage: was steht in der .txt, wenn ein Fehler auftritt (wonach muss findstr zusätzlich suchen? Da ich keinen Fehler mal eben reproduzieren kann, steht bei mir natürlich nur gestartet und beendet face-wink

Achja, ich poste gleichmal das BMail Zeugs, stand irgendwo mal hier im Forum face-wink dann muss man nachher nicht mehr danach suchen.
set "MailEXE=C:\skripte\bin\Maildienst\bmail.exe"  
set "ABS=Batchserver@domain.dom"  
set "Mailtxt=C:\EMail.txt"  
set "Mailsrv=exchange.domain.dom"  
set "RCPT=pruef1@domain.dom"  
set "Subj="  

:: Bei einem Fehler wird die E-Mail versendet!
:MAILVERSAND
%MailEXE% -s %Mailsrv% -t %RCPT% -f %ABS% -h -a "%Subj%" -m %Mailtxt% -c  


Aber noch einmal genau: Wann soll dieser Vorgang eigentlich stattfinden? Live?

greetz André
Attituder
Attituder 27.09.2011 um 15:27:07 Uhr
Goto Top
Hi,

ich denke mal, dass dieser Vorgang auch nur über eine Batchfile, die über einen Task in gewissen Abständen ausgeführt wird möglich ist.

Ein Fehler in der Log-Datei sieht so aus:

""test.job" (calc.exe) 27.09.2011 10:29:04 ERROR "

Wenn der Task ausgeführt werden:

""restart.job" (shutdown.exe)
Started 27.09.2011 09:00:00
"restart.job" (shutdown.exe)
Finished 27.09.2011 09:00:00
Result: The task completed with an exit code of (0).""

MfG
Atti
Skyemugen
Skyemugen 27.09.2011 um 16:09:16 Uhr
Goto Top
Aloha,

nunja, wenn es sich denn nur um einen Task handelt und der nur einmal am Tag eigentlich laufen sollte, dann könnte man ja per
find "%date%" "C:\WINDOWS\SchedLgU.Txt"|find /i "ERROR" && goto :MAILVERSAND  
mit meinem vorangegangenen Kommentar ein Süppchen kochen.

greetz André
Attituder
Attituder 27.09.2011 um 16:15:55 Uhr
Goto Top
Hi André

erstmal Danke für deine Hilfe,

Die Frage ist nur wie bekomme ich in die E-Mail den Tasknamen (wenn es sich um mehrere Tasks handelt" sowie den Computername, da dieses Script ja auf mehreren Windows XP Rechnern laufen soll.

MfG
Atti
Skyemugen
Skyemugen 27.09.2011 um 16:39:13 Uhr
Goto Top
Aloha,

sofern deine Tasks keine Leerzeichen im Namen enthalten, könnte man ja direkt die ganze Zeile rausschießen

@echo off & setlocal
for /f "delims=" %%s in ('find "%date%" "C:\WINDOWS\SchedLgU.Txt"^|find /i "ERROR"') do call :MAILVERSAND %%s  
pause
goto :eof

:MAILVERSAND
echo das steht in der Zeile: %1 und hier noch der Computername: %computername%
echo und den Rest, wie oben genannt, dazusetzen und fertig
goto :eof
Attituder
Attituder 28.09.2011 um 06:54:33 Uhr
Goto Top
Hi André

bei mir will die Batch-File noch nicht so richtig funktionieren. Könntest du mir das ganze bitte zusammenfassen?

MfG
Atti
Skyemugen
Skyemugen 28.09.2011 um 08:03:55 Uhr
Goto Top
Aloha,

Zitat von @Attituder:
bei mir will die Batch-File noch nicht so richtig funktionieren. Könntest du mir das ganze bitte zusammenfassen?

... Ich habe eine Popupmeldung auf dem Bildschirm mit einem Fehler, kannst du den beseitigen? ...

Ich wette, deine Gegenfrage wäre jetzt: „Was steht denn überhaupt da?” ... Was genau will denn noch nicht so richtig funktionieren? Funktioniert schon das echo der gefundenen Zeile nicht oder hängt es wirklich nur am Mailversand, der nun wirklich nicht schwerz dazuzuschustern ist ... ?

greetz André