houben
Goto Top

Batch zur Dienstüberwachung

Hallo

ich habe folgendes Problem:

Bei uns stürtzt regelmäßig auf einem Server die Druckerwarteschlange ab. Nun wollte ich mittels Batchdatei diesen Dienst überwachen und gegebenenfalls neu starten.

Ich habe auch schonmal folgende Batch geschrieben:

@echo off
:start
wmic service where "Name='spooler'" get status>%variable%
if %variable%!='Status OK'
(
net start spooler
)
ping localhost -n 10>nul
goto start


leider funktioniert diese Batch nicht. Könnt ihr mir bitte helfen?

Houben

Content-ID: 138387

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

Ausgedruckt am: 22.11.2024 um 11:11 Uhr

RogerWilco2009
RogerWilco2009 16.03.2010 um 15:32:12 Uhr
Goto Top
Hallo Houben,

ich bin jetzt mal neugierig, warum sagts Du in der GUI der Diensteverwaltung Dienst "Druckerwarteschlange" "Eigenschaften" nicht, unter dem Raider "Wiederherstellung", daß er den Dienst im Fehlerfall wieder starten soll?

Gruß Roger
chainsaw
chainsaw 16.03.2010 um 15:54:19 Uhr
Goto Top
Hallo Houben,

Probier mal was in der Richtung:

:start
tasklist | %systemroot%\system32\find /I "deinProzess.exe" 1>NUL: 2>NUL: && goto WARTE  

start deinProzess.exe
sleep 10

:WARTE
sleep 10 
goto start

So könnte das bei dir eventuell auch funktionieren. Ich überwache damit eine Software die sich dann
(falls der Prozess nicht mehr gefunden wird) neu startet.
Dazu muß der Batch aber auf dem betreffenden PC laufen und nicht auf irgendeinem Client.

Gruß Chainsaw
60730
60730 16.03.2010 um 16:06:22 Uhr
Goto Top
Moin,

@ Roger - sehe ich auch so.
@ Chainsaw - das ist aber der falsche Weg....
Find ist - sollte sich in %systemroot%\system32\ befinden - aber - dieser Pfad ist im Pfad - von daher ist ein Find auch ohne den Pfad zu nennen, in dem die Find.exe liegt - auch zielführend.

Und Last but not least:

Einen Dienst startet man nicht per start, sondern per net start, was fast das gleiche ist wie Java und Javascript.
Also wenn schon mit einer Batch - eher

net start |find "dienst" && goto eof ||net start dienst  


Gruß
Houben
Houben 16.03.2010 um 16:21:09 Uhr
Goto Top
ersteinmal danke für die Antworten.

@ RogerWilco2009

unter dem Reiter steht schon das er ihn neustarten soll aber er tut es nicht.

@chainsaw

danke das war die Lösung


Houben
60730
60730 16.03.2010 um 16:29:05 Uhr
Goto Top
?

mit Tasklist sieht man alles, aber keine gestarteten Dienste.

Von daher ist der Ansatz mit
tasklist | find /I "spooler"
genauso "falsch", wie
start deinProzess.exe

denn start ist nicht net start und unabhängig davon - start will als ersten Parameter eine Beschreibung haben.

Und um den Bock in deinem eigenen Ansatz auch loszuwerden.
Du pipest die Ausgabe von
wmic service where "Name='spooler'" get status>%variable%
in eine "%variable%" und fragst dann "diese" nicht definierte "Datei" ab
if %variable%!='Status OK'
Also Äpfel Birnen und Hackschnitzel in einen Komposthaufen geworfen

Dann doch lieber so:

Und aus gutem Grund hab ich dir das als Einzeiliges Scriptschnippselchen gegeben und nicht als Ressourcenfressenden Dauerläufer.
Einmal alle 15 minuten per schtasks sollte reichen. Besser wäre es jedoch der Ursache auf den Grund zu gehen.

Gruß
edit
"das" nur deshalb, weil Frank alle gelösten Threads in Benutzer.de erscheinen läßt und der "angebliche" Hint der Hints ein Griff in die falsche Schüssel ist.
chainsaw
chainsaw 16.03.2010 um 17:52:28 Uhr
Goto Top
Zitat von @60730:
Find ist - sollte sich in %systemroot%\system32\ befinden - aber - dieser Pfad ist im Pfad - von daher ist ein Find auch ohne den Pfad zu nennen, in dem die Find.exe liegt - auch zielführend.

Sorry das ist zu hoch für mich - kann dir nur sagen, dass der "Ressourcefressende Dauerläufer" funktioniert und gerade mal 1.960 K vom Arbeitsspeicher verbraucht.
Um es mit einem Zitat aus Wolfgang Petersens "Das Boot" abzuschließen: "Das muß das Boot abkönnen..." (in diesem Fall halt dann der PC statt des Bootes) face-wink

Schönen Abend
Chainsaw
60730
60730 16.03.2010 um 18:04:41 Uhr
Goto Top
Zitat von @chainsaw:
Schönen Abend
Chainsaw
dito.

Immer frei nach dem Motto: Brot für die Welt, Torte für mich
Mehr von HoubenHoubenWord 2003 Befehl kann nicht ausgeführt werdenHouben - 2 KommentareHoubenDateien mit berechtigungen packenHouben - 10 KommentareHoubenWsus UpdateberichtHouben - 2 KommentareHoubenArcserve Jobbeschreibung wird nicht gespeichertHouben
Heiß diskutiert
superfun2k24Sophos SFOS 20 DNAT funktioniert nichtsuperfun2k24 - 26 Kommentareuser217Kaufberatung Hardware - Hyper-V Cluster 3 Nodesuser217 - 25 KommentarePharaunIntel-E810 QSFP28 to Mikrotik QSPF+ mit 40Gbit VerbindungPharaun - 23 Kommentareprplemk2Testumgebung bauen (Grundlegend)prplemk2 - 19 KommentareaufdemmarsHP Z620 USB hat kein Strom beim Startenaufdemmars - 17 KommentareTJ.Hooker74Dom.Admin-Passwort ändern - Auswirkungen auf EX, HCW, AADCTJ.Hooker74 - 15 KommentaremaisenkaiserSwitch ohne STP ins Netzwerkmaisenkaiser - 13 KommentareadmtechEntwicklertagebuch: Release 6.4 - Filteradmtech - 13 KommentareJudgelgZertifikate in die Exchange Online GAL hochladenJudgelg - 13 KommentareUnluckyProccess1999Creo 4.0 Lizenz Server (LMTOOLS)UnluckyProccess1999 - 13 KommentareleberkaeseFB7590 ISDN Fax-Funktionleberkaese - 12 KommentareZZaaiiggaaEDIFACT - Keins vorhanden ?ZZaaiiggaa - 11 Kommentare