Intel RST, Raid Status Abfrage

  • Hallo liebe Community,

    Lange Zeit habe ich mich hier im Forum schon informiert, bisher hat suchen und lesen gelangt, nun bin ich doch an etwas gestoßen wo ich nicht weiter komme und das Forum auch keine Informationen liefert.

    Sollte es dennoch einen ähnlichen Beitrag geben bitte ich um Verzeihung.

    Kurz zu mir, ich habe Autoit seit ein paar Jahren in den Fingern und es macht mir richtig Spaß damit etwas zu basteln, ich bin allerdings keine Programmierer etc und somit ist das ganze nur "Hobby".

    Nun habe ich das Hobby mit etwas nützlichem verbinden wollen um für einen Server eine Statusbericht zu erstellen, dieser soll dann per Mail raus gehen.

    Grundlegende Idee, der Server macht nachts ein Backup und sollte nun verschiedene Schritte Protokollieren, ob die Datensicherung erfolgreich war etc..... und eben auch den Raid Status.

    Nun ist das etwas verzwickt den Raid Status zu sehen da Windows das Raid 1 ja nur als eine Platte erkennt.

    Der "Intel Rapid Storage Technology- Treiber" steuert ja den Raid Controller an und liefert die nötigen Informationen.

    Wie bekomm ich nun also aus einem anderen Programm die Informationen, also aus dem Intel RST den Raid Status etc.

    Bzw hat vielleicht einer eine direktere Lösung?

    Ich hoffe es ist verständlich formuliert und mir kann da jemand weiter helfen.

    Darktower

    • Offizieller Beitrag

    Da ich noch nie mit Intel Raid zu tun hatte, sind meine Angaben jetzt eher Überlegungen.

    Bei den bisher von mir verwendeten Raid Controllern war immer ein Auswertetoll dabei, das entweder per Web-Interface ansprechbar war oder als eigenständige exe aufgerufen wurde. Das wären dann auch meine Ansatzpunkte, bei Web-Interface z.B. mit der _IE-UDF die Infos abfragen, bei einer exe schauen, ob die Angaben mit AutoIt auslesbar sind und dann entsprechend automatisieren.

  • Da stimme ich BugFix zu. Rein intutiv würde ich auf , die meist überfrachteten, Intel Tools verzichten. Im Netz gibt es jede Menge portabler Freeware Tools die entsprechende Werte liefern. Häüfig auch als Plain Text.... Schau mal danach. Wenn Du wider Erwarten nichts finden solltest .... Nachricht

    GRuß

    Peter

    Hinweise auf Suchmaschinen finde ich überflüssig - wer fragt hat es nicht gefunden oder nicht verstanden. Die Antwort gibt sich oftmals schneller als der Hinweis auf Dr. Goggle & Co.

    Ab 19-10-22 ergänzt um:

    Die Welt wird nicht bedroht von den Menschen, die böse sind, sondern von denen, die das Böse zulassen. (Albert Einstein)

  • Für ältere Treiberversionen gibt es anscheinend ein Command Line Interface, welches genutzt werden könnte um die gewünschten Informationen zu erhalten:

    https://communities.intel.com/thread/101156

    Scheinbar wird das aber nicht mehr weiterentwickelt und ist inkompatibel mit aktuellen Treiberversionen. Hab jetzt aber auch nicht intensiver gesucht ob es evtl. doch eine aktuelle und kompatible Version gibt.

    Webautomatisierung via IE.AU3 scheidet im Falle von Intel onboard Raid aus, da hier kein Webinterface, sondern eine normale Desktopanwendung zum Einsatz kommt.

    Falls es dir ausreicht lediglich beim Ausfall des Raids alarmiert zu werden könnte man alternativ evtl. das Windows Ereignislog auswerten. Vermutlich generiert der Raidtreiber hier Warnmeldungen auf die reagiert werden könnte. Das nüsste man aber wohl testen.

    Das Tool Crystal Disk Info kann im Übrigen die SMART Werde aller Intel Raid Einzelfestplatten auslesen und ist soweit ich mich erinnere per CMD automatisierbar. Auch das könnte man nutzen um den Zustand der Festplatten regelmäßig zu prüfen.

  • Ah hab nochmal kurz geschaut, zumindestens in meiner Version (14.8) bietet die RST Software selbst schon die Möglichkeit Emailbenachrichtigungen zu aktivieren (Voreinstellungen -> Email). Das Ereignislog überwachen ist also garnicht notwendig. Wenn das ganze Teil deiner Software sein soll könntest du einen eigenen simplen TCP/SMTP Server in Autoit schreiben, der die Email des RST Treibers abfängt und auswertet.

  • Erstmla Danke an für die Antworten!

    Intel RST wird zwar über eine .exe geöffnet, mir ist es leider nicht gelungen das Program mittels Autoit zu bedienen bzw den Text zu bekommen.

    Ein Web Interface für den Intel Controller gibt es wie con misterspeed beschrieben leider nicht.

    Die Command line Version ist schon älter und ich hab´s zwar versucht zum laufen zu bringen, hab es leider nicht geschafft. Zumal ich eigentlich keine veralteten Treiber nehmen wollte.

    Ansich bin ich zwar mit dem Intel RST zufrieden, es läuft prima ist übersichtlich etc, die informationen sieht man im Tool auch, nur bekomm ich Sie halt nicht in das Script.

    Crystal Disk Info habe ich zwar inst, muss aber ehrlich sagen das ich da garnicht dran gedacht habe ob da beide RAID Platten erkannt werden etc.

    Werd das mal prüfen.

    Das E-mail Protokoll hab ich probiert, hier ist meines wissens nach eine SMTP Authentifizierung mit BN+PW nicht möglich.

    Daher wird es warscheinlich nicht möglich sein eine Mail zu senden. (bzw bin ich vl nur zu doof dazu?)

    Wie das mit dem Email abfangen geht versteh ich ehrlich gesagt auch nicht!

    Werde aber auch hier mal die Möglichkeiten prüfen.

    Vielen Dank

    Darktower

  • Einen eigenen SMTP Server programmieren ist recht einfach.

    Info Link: https://de.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol

    Anleitung:

    - Client kompilieren

    - Server in Scite starten

    - Client.exe ausführen

    - Die Scite console sollte alle empfangenen Nachrichten des Clients anzeigen

    - Server kann mit ESC Taste sauber beendet werden

    Anmerkungen:

    Statt des Test clients kann/sollte dann natürlich Intel RST den Emailversand übernehmen. Die Emails kannst du dann im Serverscript analysieren und auswerten.

    Abweichend vom Wikipedia Artikel sendet die Autoit Funktion "_INetSmtpMail()" im Übrigen kein "QUIT", sondern einen "." nach Ende der Emailübertragung. Ob dies bei anderen Emailclients ebenfalls so ist oder ob es noch weitere Statusnachrichten gibt weiß ich nicht. In der Serverconsole sollte aber ersichtlich sein ab wann das Script nicht mehr korrekt funktioniert bzw. auf was dein Server evtl. falsch antwortet.

    Statt CRLF könnte der Email Client auch nur ein LF senden, in diesem Fall endet mein Switch...Case immer im ELSE Zweig (250 OK). Sollte dies bei anderen Clients vorkommen muss der Switch...Case erweitert werden.

    Sollten nachfolgende Scripte nicht funktionieren bitte prüfen ob Virenschutz oder Firewall die Scripte am Mailversandt hindern und ggf. Ausnahmeregeln erstellen.


    Test SMTP Server:

    Test Client:

    3 Mal editiert, zuletzt von misterspeed (12. November 2017 um 19:10)

  • Ich habe das nun mal mit dem SMTP Server gleich mit dem RST probiert.

    Im RST als "SMTP Server" die IP eingetragen und den Port 25.

    Wie das nun mit Aussgangsadresse funktionieren soll versteh ich ehrlich gesagt nicht da es nicht über mein Provider läuft, aber egal.

    Server fängt die Testmail von RST ab (Serveranswer: 220 Service ready), nur RST hängt dann an der Testmail.

    Es bricht aber nicht ab, sondern wartet wohl auf die passende Antwort.

    Soweit so gut,

    da die Testmail allerdings nicht abgeschlossen werden kann, kann aber der Emaildienst nicht genutzt werden.


    Anderer Ansatz:

    Ich habe nun bei Intel recherchiert und herausgefunden das man mit dem RST sogar ein Protokoll in *.txt bekommt.

    https://www.intel.de/content/www/de…chnologies.html

    Die TXT hat natürlich viele Vorteil, da sie viele Informationen enthält, für die Weiterverarbeitung sehr angenehm ist und auch jeder Zeit ein aktueller Stand abgefragt werden kann! (eigentlich genau das was ich will!)

    Nun kommt aber wieder das Problem das man eben im RST bzw in dem Hilfefenster wieder nichts steuern kann.

    Da ich an keine ID für Button komme, könnte man einfach "Click" nach Koordinaten machen?

    Man bräuchte dann nur 3 Clicks im RST (>Hilfe, >Systembericht, >speichern), Fenster schließen, fertig.

    Gruß Darktower

    Einmal editiert, zuletzt von Darktower (13. November 2017 um 10:53)

  • Hab nun versucht mittels, Send, Controlsend, Mousemove, Mouseclick, Controlclick irgendwie im RST zu navigieren.

    Sobald das RST Fenster aktiv ist, geht nichts mehr, kein Befehl zur Navigation wird angenommen.

    So ein kurzer Weg zur TXT und ich komm nicht hin, frustrierend! ;(

    Edit: 14.11

    Hab es nun auch mal mit einem vbs probiert, das hat leider auch nichts gebracht.

    Wie kann es sein das man in dem Fenster absolut nichts automatisieren kann?

    2 Mal editiert, zuletzt von Darktower (14. November 2017 um 11:25)

  • Edit: 14.11

    Hab es nun auch mal mit einem vbs probiert, das hat leider auch nichts gebracht.

    Wie kann es sein das man in dem Fenster absolut nichts automatisieren kann?

    Von der Aufmachung her würde ich vermuten, dass es sich eigentlich um ein eingebettetes Internet Explorer Objekt handelt. Jedenfalls handelt es sich nicht um eine Standard GUI mit Standard Windows Controls. Spielt aber auch keine Rolle, denn GUI Automatisierung funktioniert ohnehin nur wenn es diese gibt. Solange kein Benutzer lokal angemeldet ist existiert auch keine grafische Windows Oberfläche. Das sollte der Normalfall bei einem Server sein.

    Warum die Testmail vom Intel RST nicht versendet wird ist mir nicht ganz klar. Bekomm ich hier leider auch nicht hin, mein Minimalserver empfängt absolut nichts, selbst wenn man direkt nach dem Verbindungsaufbau noch andere Statuscodes wie 250 zurück schickt. Die Client-Serververbindung scheint jedenfalls zu bestehen, denn bei ungültigen Serveradressen erscheint sofort eine Fehlermeldung des Intel RST, der Client scheint also auf irgendwas vom Server zu warten.

    Nunja es ist ohnehin ziemlich peinlich für Intel, dass beim Emaildienst weder Authentifizierung noch Verschlüsselung vorgesehen wurde, andernfalls könnte man jeden beliebigen Emailanbieter nutzen.

    • Offizieller Beitrag

    Wie kann es sein das man in dem Fenster absolut nichts automatisieren kann?

    Weil es Programmiersprachen gibt, die eigene Fensterklassen erstellen, auf die mit Standardbefehlen nicht zugegriffen werden kann (z.B. Delphi). Habe einige professionelle Software, die mit Delphi geschrieben wurde - da hast du null Möglichkeit zum Automatisieren.

  • misterspeed

    wie gesagt ich habe das mit der Mail zu deinem Serverscript auf anhieb hinbekommen, doch was Intel RST "hören" will, kein Plan.

    BugFix

    _ImageSearch findet soweit ich weiß vorgegeben Grafiken auf dem Bildschirm, das ist gut und schön, aber wie bringt mich das weiter?

    Die Maus kann ich auch positionieren in dem ich:

    Intel RST nicht aktive setzte, Maus positioniere und Intel RST wieder aktiv setzte.

    Bringt mir aber beides nix, kann dann ja kein Mausklick ausführen.


    Das es Fenster gibt die sich nicht steuern lassen wusste ich bereits, habe da mal eine Lösung mit OCR tesseract gebastelt und die Buchstaben sogar "trainiert".

    Eine Heiden Arbeit, hat aber gut funktioniert. War aber ein völlig anderes Programm wo im Prinzip klar war das man da nicht leicht ran kommt.

    Zumal es mir irgendwann ehr darum ging es "hin zu bekommen" als das die Lösung selbst.

    Neuer Gedanke:

    Das Programm Intel RST muss ja die "Werte" die es in eine TXT schreibt irgendwo speichern, bzw irgendwo her beziehen.

    Möglicherweise über eine DLL? Ich muss ganz ehrlich sagen diese DLL verstehe ich nicht wie/was/wo die Dinger machen, nur ist der Intel RST Ordner voll davon.

    Der Gedanke geht dahin die Werte direkt zu beziehen ohne die IntelRST.exe zu starten, ob das überhaupt geht weiß ich nicht.

    • Offizieller Beitrag

    BugFix

    _ImageSearch findet soweit ich weiß vorgegeben Grafiken auf dem Bildschirm, das ist gut und schön, aber wie bringt mich das weiter?

    He he, der Einwurf kam von alpines.

    Aber als letzter Ausweg ist das durchaus möglich, vorausgesetzt du bist immer an einem Bildschirm mit derselben Auflösung. Wenn ich mich recht erinnere hatte Andy mal ein Button-Search-Click Programm geschrieben, basierend auf _ImageSearch. Musst du mal die Forumssuche bemühen.

  • Gut. Das Skript ist auch noch aus Zeiten, in denen nicht auf jedem Rechner das Snipping Tool installiert war. Damit hat man es heute noch etwas komfortabler.

    Grüße autoiter

  • Also das Script ist schon ne echte Tapete und für mich erstmal nicht zu verstehen.

    Da jedoch die Maus mit Mousmove etc gesteuert wird, war mir gleich klar, da wird nix draus, da ich das ja alles schon probiert habe.

    Man kann ja mit dem Script prüfen ob der ausgewählte Button gefunden wird, also hab ich das gleich mal gemacht.

    Die Kord. werden gefunden, doch wie erwartet bleibt die Maus still.

    Bei anderen Button/Symbolen etc funktioniert es wirklich gut.

  • Hi,

    Die Kord. werden gefunden, doch wie erwartet bleibt die Maus still.

    Bei anderen Button/Symbolen etc funktioniert es wirklich gut.

    PushTheButton funktioniert bei mir immer noch....

    In den Tray-Optionen kannst du einen "Mausversatz" einstellen, da es öfter vorkommt, dass beim Mouseover eine andere Grafik des "Buttons" eingefügt wird.

    Übrigens wird kein _ImageSearch()-Dreck dort verwendet, die Suche erfolgt entweder mit einer Byte-Suchfunktion aus der Prospeed.dll (aus 2009btw) bzw. auf heutigen Rechnern ausreichend schnell mit nativem AutoIt! Die Prospeed.dll war übrigens mein Grund, wieder mit Assembler anzufangen...

    Die Prospeed.dll kann man einfach weglassen.

    In der Anleitung zu PushTheButton steht eigentlich alles, wenn Unklarheiten bestehen, bitte kurze Info mit Ergänzungsvorschlägen.