IPSWatchDog

Hallo Freunde des IPSWatchDog,

nun habe ich es, mit der tatkräftigen Unterstützung von Tonic1024, der das Interface (TRIXI.DLL) geschrieben hat, geschafft, IPSWatchDog per SOAP IP-Symcon überwachen zu lassen. Die Kommunikation über das Dateisystem fällt weg.

Es hat dabei einige Umstellungen geben müssen, der automatische Stop und Start von IPSWatchDog ist per SOAP leider nicht mehr möglich. Denn wenn der IPS-Dienst herunterfährt, ist damit auch SOAP nicht mehr verfügbar.
Abhilfe: IPSWatchDog per Skript von IP-Symcon starten und beenden lassen.

Für den Fall, dass der neue Weg für den ein oder anderen nicht brauchbar ist, können sowohl die Version 1.8.0, als auch die neue Version 2.x heruntergeladen werden.

Viel Spaß.

Hallo Andreas,

hast Du (oder gibt es) eine Anleitung, wie man die Umstellung auf SOAP vollziehen sollte?:confused:
Ich weiß derzeit noch nichts damit anzufangen, würde es aber gerne umstellen, wenn es denn der sinnvollere Weg ist. (Du hast sicher auch keine Lust auf Dauer zwei verschiedene Versionen zu pflegen…;))

Joachim

Hallo Joachim,

eigentlich gibt es nichts umzustellen. Du brauchst in IPS die Skripte, die alive.ips, start.iwd und stop.iwd (und gegebenenfalls boot.iwd) erzeugen nicht mehr und kannst sie löschen (ebenso eventuell angelegte Dateien).
An der alten Version (1.8) werde ich wahrscheinlich nicht mehr weiterentwickeln.
Die neue Version (2.x) erledigt die Überwachung nun über den SOAP Server von IPS. Hierzu wird, neben der schon bekannten Überprüfung des IPS Service auf Systemebene, überprüft, ob der SOAP Server online ist. Hat der IPS Server eine Macke, dann dürfte dies nicht mehr der Fall sein (bei der alten Version von IWD wurde nun keine alive.ips Datei mehr erzeugt). Ich muss gestehen, dass ich das noch nicht 100% testen konnte, da bei mir seit Fertigstellung der Version 2, IPS klaglos läuft. :o
Möchte man ausserdem die Möglichkeit nutzen, von IPS aus den Watchdog aufzufordern, den Rechner neu zu starten, dann muss noch eine Stringvariable angelegt und deren ID in den Einstellungen von IPSWatchDog eingetragen werden.

Leider funktioniert es mit der neuen Version (noch) nicht, dass IPS die Befehle and IPSWatchDog schicken kann, zu pausieren oder zu starten (wurde bisher über die Dateien stop.iwd und start.iwd erreicht). Bisher kann IWD sich nur über eine Statusvariable einen Befehl abholen. Aber wenn der IPS Dienst gerade herunterfährt (also nun der STOP Befehl an IWD gesendet werden sollte), dann ist der Wert der Variable nicht mehr abrufbar, da auch der SOAP Server nicht mehr läuft.

In einer zukünftigen Version soll IPS an IWD direkt eine Nachricht senden können, durch die ein automatisches Pausieren und Starten wieder möglich wird. Tonic1024 bastelt schon an so etwas.

Lange Rede, kurzer Sinn: installiere einfach die neue Version, trage dort die IP deines Rechners (oder lass es auf dem Standard 127.0.0.1) und die ID einer von dir angelegten Stringvariable ein, lies dir kurz im Handbuch durch (Rubrik „Die Skripte“), wie das IPS-Skript zum Rechnerneustart aussehen kann und fühle dich (hoffentlich) mit der neuen Version wohl.

Grüße,

Hallo Andreas,

danke für das tolle Programm.

Hatte erst die 2.0.1-Version installiert, die „Beiden“ (IPS und WD) liefen dann auch einige Stunden gut, es kam aber dann trotzdem zum Einfrieren von IPS und WD (beide „schliefen“). Nur Neustart möglich.

Nachdem sich dies mehrmals wiederholt hat habe ich die 1.8.0 installiert. Anfangs zwei Fehler, aber seit 2 Tagen läuft IPS plötzlich fehlerlos durch.
WD muss nicht mal eingreifen.

Bei V2 fiel mir auch noch auf, daß das Logging, ob erweitertes Debugging oder nicht, das Gleiche einträgt. Ausserdem fehlten die Skript-Datei.

Gruß

Bruno

Hallo Bruno,

danke für deine Nachricht.
Ja, es ist richtig, die Version 2.0.1 ist noch nicht so ganz ausgereift (siehe auch meine Warnung auf der ersten Seite dieses Threads).
Ich bin bei der Umstellung von Überwachung durch eine Nachrichtendatei auf direkte Überwachung über den IPS-eigenen SOAP Server auf einige Probleme und Denkfehler gestoßen.
Auch bin ich immer noch auf der Suche nach den sporadisch auftretenden Programmfehlern (und manchmal damit eingergehenden kopletten Programmeinfrierungen). Ich habe einige Vermutungen, jedoch den Verursacher noch nicht gefunden. Ich kann derzeit daher nur empfehlen, bei der Version 1.8 zu bleiben.

Aber ich bin nicht untätig gewesen. Die Version 2.1 nähert sich der Vollendung. Ich werde dazu die Dokumentation überarbeiten und wieder die notwendigen Skripte beifügen.
Ab Donnerstag bin ich erst mal für eine Woche im Urlaub, danach werde ich mich aber sehr bald darum kümmern, dass ich eine Releaseversion 2.1 zustande bekomme.
Diese soll dann folgende Neuerungen gegenüber der Version 1.x haben:

[ul]
[li]Überwachung durch Schreiben und Auslesen einer IPS Variablen
[/li][li]Die „alive“ Meldung wird in dieser Variablen stehen und durch ein Skript dort eingetragen werden
[/li][li]Dieses Skript wird durch IPSWatchDog ausgelöst werden
[/li][li]IPS kann über eine Nachrichtenvariable Befehle an IPSWatchDog senden (z.B. Änderung bestimmter Konfigurationeinstellungen etc.)
[/li][/ul]

Noch ein wenig Geduld und viele Grüße,

Hallo Andreas,

wünsche einen schönen Urlaub :slight_smile:

Die Warnung habe ich nach der Installation usw. auch gesehen…, aber es ist ja nichts passiert, es läuft jetzt.

Gruß

Bruno

Nun ist es vollbracht! :smiley:

Die Version 2.2.0 von IPSWatchDog ist verfügbar und sollte im großen Ganzen funktionieren. :stuck_out_tongue:

Noch nicht richtig getestet habe ich die Überwachung per Datei und wäre hier sehr an einem Feedback interessiert. :rolleyes:

So, dann probiert es mal aus und lasst mich an euren Erfahrungen teilhaben.

Pläne für die zukünftige Entwicklung:

[ul]
[li]Fehlerüberprüfung im Setup[/li][li]seht ihr noch Verbesserungsbedarf?[/li][/ul]

Noch ein kleiner Hinweis zur Umstellung auf die neue Version:
Am besten sollte man alle „alten“ IPSWatchDog-Dateien erst mal sichern und dann das alte Programm deinstallieren (oder löschen).
Jetzt das neue Programm installieren und die Gebrauchsanleitung lesen!. Hier wird man nämlich darauf stoßen, dass einige Variablen und Skripte in IPS anlegen werden müssen, am besten mit dem beigefügten Installationsskript (IPSWatchDogInstall.php). Dieses nimmt einem dann auch gleich Suche nach den IDs der angelegten Objekte ab und stellt eine Datei bereit, die diese automatisch in das Setup von IPSWatchDog einträgt.
Sinnvoll ist es auch, erst einmal das Standalone-Setupprogramm IWDSetup.exe aufrzurufen und die Eintragungen zu überprüfen.
Dann kann es endlich richtig los gehen :slight_smile:

Viele Grüße,

Hallo Andreas,

dann muss ich mal langsam dein tolles Tool auch mal testen.
Und deine Doku ist echt vorbildlich.

Version 2.20? Dafür hat IPSymcon Jahre gebraucht :smiley:

Grüße,
Doc

Hihi :stuck_out_tongue:
Allerdings wurde bei denen auch jede Version veröffentlicht. Ich habe da ein paar interne Versionen mit Versionsnummern versehen, jedoch nicht in Umlauf gebracht.

Hallo Andreas,

super Sache dein Programm.
Wollte es gleich ausprobierten.:slight_smile:
Aber leider startet das Prog nicht. Setup kann ich öffnen und ich habe alle Einstellungen so belassen. Wenn ich nun IPSWatchDog.exe starte kommt eine Fehlermeldung: „IPSWatchDog hat ein Problem festgestellt und muss beendet werden.“
Das gleiche habe ich mit dfhome sein FritzFonCtl.exe.
Warscheinlich liegt das Problem an meinen Rechner. Aber wie finde ich es?
Kann mir jemand einen Tipp geben?:o

Hallo Andreas,

auch ich habe versucht Deiner tollen Anleitung Schritt-für-Schritt zu folgen, die IPS WatchDog Setup lässt sich auch ausführen und bearbeiten. Die IPSWatchDog.exe jedoch führt zu der altbekannten Windows XP Fehlermeldung „IPSWatchDog.exe hat ein Problem festgestellt und muss beendet werden. …“.
Ich habe auch versucht die exe als Administrator ausführen zu lassen, jedoch weiß ich das Kennwort nicht (werde mich dazu mal auf die Netzsuche begeben).

  • Kann das der alleinige Grund für die Fehlermeldung sein?
  • Oder ist es noch zwingend erforderlich, irgendwelche Dateien aus der ersten Version zu entfernen?

Joachim

P.S.: Habe nun ein Admin-Kennwort eingerichtet und versucht die Anwendung als Admin zu starten - das ändert aber leider nichts an der Fehlermeldung nach dem Start…

Moin auch,

@Bussard & @JPaeper

hm, es scheint eine Inkompatibilität mit WindowsXP zu bestehen, keine Ahnung, warum. Ich habe es hier bei mir auf Windows7 laufen und alles geht ohne Probleme.
Allerdings konnte ich euer Problem auf einem XP-Rechner reproduzieren. Mist!
Ich werde mal auf die Suche gehen und melde mich dann wieder

OK!

Gute Nachrichten für alle, die Probleme mit IPSWatchDog und Windows XP haben:

Die Version 2.2.0 war mit Delphi 2007 geschrieben und irgendwie scheint dies einen Code produziert zu haben, den Windows XP nicht mag (keine Ahnung, warum).
Ich habe es jetzt mit Delphi 2010 kompiliert und es läuft!
Ich werde die neue Version 2.2.1 in Kürze veröffentlichen!

Hallo Andreas,

ich habe die neue Version heruntergeladen und installiert. Das Programm startet jetzt, bringt aber trotzdem eine Fehlermeldung:
„Zugriffsverletzung bei Adresse … in Modul ‚IPSWatchDog.exe‘. Lesen von Adresse 0000000000“.

Verschwindet nach Bestätigung.

Kannst Du das bitte noch mal prüfen?

Joachim

Kannst du bitte einmal das erweiterte Logging einschalten (gegebenenfalls mit IWDSetup) und mir nach Auftreten der SChutzverletzung 1. die Adresse zum Vergleich mit eigenen Erfahrungen), 2. dasIPSWaotchDog.log und 3. IPSWatchdog.cfg zukommen lassen?
Dann kann ich mir mal anschauen, ob ich da irgend etwas finde.

Hallo Andreas,

hier mal die Dinge die Dir (oder uns ;)) vielleicht helfen könnte.

Joachim

IPSFehlermeldung.JPG

IPSWatchDog.zip (1.87 KB)

IPSWatchDog - Kopie.zip (790 Bytes)

Hm, sieht so aus, als läge das Problem in dem Modul, dass die Prowl Nachrichten sendet - eins meiner Sorgenkinder.
Ich schaue mir das mal genauer an und finde hoffentlich eine Lösung.

Mal darüber nachgedacht?

Toni

Hm, das wäre zwar ein Umweg, jedoch eine Möglichkeit.

Mein Problem mit Prowl ist, dass ich die Nachricht über eine TWebbrowser Komponente schicke. Nein, eigentlich ist das noch nicht das Problem. Ich möchte nur gerne das Ergebnis (xml-Code im Webbrowser dargestellt) auswerten. Ich habe lange gebastelt, bis ich das ohne Exceptions hinbekommen habe und es läuft bei mir auch stabil (Windows XP und Windows 7). Jedoch scheint es bei anderen Usern Probleme zu machen.

Schön wäre es natürlich, wenn ich statt der TWebbrowser Komponente eine Indy Komponente nutzen könnte. Jedoch scheiter ich hier daran, dass ich eine HTTPS Seite aufrufen muss und ich keine Ahnung habe, wie ich SSL mit einbinden kann. Auch Recherchen in Google halfen mir da nicht wirklich weiter.

Cheers,

Keine Ahnung. Hab Prowl nie zuverlässig zum Laufen bekommen und mich bewusst dagegen entschieden. Zu kompliziert und zu instabil.

vielleicht hilft das: Delphi HTTPS Seite per Indy ansprechen - Delphi-PRAXiS

Toni