- Beiträge: 20
Fehler abfangen/verarbeiten
- frickeflowheater
- Autor
- Offline
- Benutzer
Weniger
Mehr
1 Jahr 1 Monat her #4996
von frickeflowheater
Fehler abfangen/verarbeiten - Beitrag(4996) wurde erstellt von frickeflowheater
Moin zusammen,
ich versuche derzeit eine individuelle Log-Datei aufzubauen, in der ich einen Überblick über erfolgreiche/fehlgeschlagene Aufgaben habe.
Zielzustand: 1 Log-Datei je Tag, je definierter Aufgabe 1 Eintrag mit relevanten Informationen wie z.B. Name der Definition, Startzeitpunkt, Ende, Inserts, Updates. Idee des ganzen ist, dass ich ein auf für mich relevante Infos reduziertes Logfile erstelle, mit dem ich am nächsten morgen sehe, ob es bei den nachts laufenden Prozessen Fehler, Auffälligkeiten etc. gab (z.B. bei der Datenmenge, Laufzeit) etc.
Aktueller Stand: Für die erfolgreichen Prozesse läuft das soweit ganz gut. Nach Abschluss der Aufgabe werden einige bei der Ausführung gesetzte Parameter mit den obigen Informationen in eine Textdatei geschrieben. Derzeit ist das über einen NET-Skript Heater gelöst, der die Log-Datei zum Ende der Definition erstellt bzw. je Aufgabe um die Informationen ergänzt.
noch offen: Wie fange ich Fehler ab und erfasse für's Debugging interessante Informationen? Mir fehlt quasi eine Möglichkeit, im Fehlerfall eine bestimmte Prozedur aufzurufen, die mir dann Informationen wie z.B. Key, bei dem der Fehler aufgetreten ist, Verarbeitungsschritt,.... ausgibt. Ich vermute, das geht etwas über die Return Codes. Mir fehlt allerdings der Weg, wie ich im FH Server diese Codes abfange und damit eine bestimmte Prozedur starten kann. Ich denke an eine Lösung à la OnError GoTo errorHandling (darin dann kurzes Skript, welches mir die Parameter einfach in das Logfile schreibt).
Gibt es einen Weg außerhalb einer cmd Datei?
Danke und Gruß
Niko Stein
ich versuche derzeit eine individuelle Log-Datei aufzubauen, in der ich einen Überblick über erfolgreiche/fehlgeschlagene Aufgaben habe.
Zielzustand: 1 Log-Datei je Tag, je definierter Aufgabe 1 Eintrag mit relevanten Informationen wie z.B. Name der Definition, Startzeitpunkt, Ende, Inserts, Updates. Idee des ganzen ist, dass ich ein auf für mich relevante Infos reduziertes Logfile erstelle, mit dem ich am nächsten morgen sehe, ob es bei den nachts laufenden Prozessen Fehler, Auffälligkeiten etc. gab (z.B. bei der Datenmenge, Laufzeit) etc.
Aktueller Stand: Für die erfolgreichen Prozesse läuft das soweit ganz gut. Nach Abschluss der Aufgabe werden einige bei der Ausführung gesetzte Parameter mit den obigen Informationen in eine Textdatei geschrieben. Derzeit ist das über einen NET-Skript Heater gelöst, der die Log-Datei zum Ende der Definition erstellt bzw. je Aufgabe um die Informationen ergänzt.
noch offen: Wie fange ich Fehler ab und erfasse für's Debugging interessante Informationen? Mir fehlt quasi eine Möglichkeit, im Fehlerfall eine bestimmte Prozedur aufzurufen, die mir dann Informationen wie z.B. Key, bei dem der Fehler aufgetreten ist, Verarbeitungsschritt,.... ausgibt. Ich vermute, das geht etwas über die Return Codes. Mir fehlt allerdings der Weg, wie ich im FH Server diese Codes abfange und damit eine bestimmte Prozedur starten kann. Ich denke an eine Lösung à la OnError GoTo errorHandling (darin dann kurzes Skript, welches mir die Parameter einfach in das Logfile schreibt).
Gibt es einen Weg außerhalb einer cmd Datei?
Danke und Gruß
Niko Stein
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
1 Jahr 1 Monat her #4998
von FlowHeater-Team
gruß
Robert Stark
FlowHeater-Team antwortete auf Fehler abfangen/verarbeiten - Beitrag(4998)
Hallo Herr Stein,
der FlowHeater Server entscheidet anhand des ERRORLEVEL (=Returncode) ob eine Aufgabe erfolgreich ausgeführt wurde oder nicht. Welche jeweils Erfolg, Warnung bzw. einen Fehler verursachen können Sie in der Aufgabe unter Ausführen definieren, siehe Screenshot.
Für jede Aufgabe wir eine Aufgabenhistorie angelegt die Sie auch aufrufen bzw. einsehen können. Rechtsklick auf die Aufgabe und im Kontextmenü „Aufgabenhistorie“ aufrufen. Über
die Aufgabenhistorie können Sie auch direkt das entsprechende Server Logfile anzeigen lassen. Hier stehen dann noch weitere Informationen zum Aufruf. Detailliert wird das, wenn Sie in der Server Konfiguration den LogLevel auf DEBUG stellen.
In der History sehen Sie wann welche Aufgabe mit welchen Returncode ausgeführt bzw. beendet wurde. Zusätzlich können Sie sich auch die Konsolenausgaben mit in die History ausgeben lassen. Hierzu müssen Sie in der Server Konfiguration unter Historische Daten, den Haken bei „Konsolenausgabe speichern“ setzen. So können Sie im Nachgang sehen was welche Aufgabe gemacht hat.
Wenn Sie jetzt noch für jede Aufgabe eine Email Benachrichtigung definieren die Ihnen bei Warnungen oder Fehler zugestellt wird, müssen Sie hier nur nachschauen, wenn so ein nicht erwartetes Ereignis auftritt.
Weitere Logs können natürlich auch individuell im CMD Skript bzw. in der Definition durchgeführt werden. Im CMD Skript können Sie das folgendermaßen abfragen und ggf. weitere Aktionen durchführen.
Alles was Sie hier mit Echo ausgeben landet in der Aufgabenhistorie sowie auch im Server Log.
der FlowHeater Server entscheidet anhand des ERRORLEVEL (=Returncode) ob eine Aufgabe erfolgreich ausgeführt wurde oder nicht. Welche jeweils Erfolg, Warnung bzw. einen Fehler verursachen können Sie in der Aufgabe unter Ausführen definieren, siehe Screenshot.
Für jede Aufgabe wir eine Aufgabenhistorie angelegt die Sie auch aufrufen bzw. einsehen können. Rechtsklick auf die Aufgabe und im Kontextmenü „Aufgabenhistorie“ aufrufen. Über
die Aufgabenhistorie können Sie auch direkt das entsprechende Server Logfile anzeigen lassen. Hier stehen dann noch weitere Informationen zum Aufruf. Detailliert wird das, wenn Sie in der Server Konfiguration den LogLevel auf DEBUG stellen.
In der History sehen Sie wann welche Aufgabe mit welchen Returncode ausgeführt bzw. beendet wurde. Zusätzlich können Sie sich auch die Konsolenausgaben mit in die History ausgeben lassen. Hierzu müssen Sie in der Server Konfiguration unter Historische Daten, den Haken bei „Konsolenausgabe speichern“ setzen. So können Sie im Nachgang sehen was welche Aufgabe gemacht hat.
Wenn Sie jetzt noch für jede Aufgabe eine Email Benachrichtigung definieren die Ihnen bei Warnungen oder Fehler zugestellt wird, müssen Sie hier nur nachschauen, wenn so ein nicht erwartetes Ereignis auftritt.
Weitere Logs können natürlich auch individuell im CMD Skript bzw. in der Definition durchgeführt werden. Im CMD Skript können Sie das folgendermaßen abfragen und ggf. weitere Aktionen durchführen.
Code:
@echo off
set FHBATCH="C:\Program Files (x86)\FlowHeater V4\BIN\FHBatch.exe"
%FHBATCH% Ihre-Import-Export-Definition.fhd
if %ERRORLEVEL% EQU 0 goto erfolg
if %ERRORLEVEL% EQU 4 goto warnung
if %ERRORLEVEL% EQU 8 goto fehler
if %ERRORLEVEL% EQU 12 goto abbruch
echo nicht definierter Returncode
goto ende
REM Erfolgeiche Ausführung
:erfolg
echo Ausführung erfolgreich beendet
exit 0
REM Behandlung von Warnungen
:warnung
echo Ausführung mit Warnungen beendet
exit 4
REM Behandlung von Fehlern
:fehler
echo Ausführung mit Fehlermeldungen beendet
exit 8
REM Behandlung von Abbrüchen
:abbruch
echo Ausführung abgebrochen
exit 12
REM Skript Ende
:ende
exit %ERRORLEVEL%
Alles was Sie hier mit Echo ausgeben landet in der Aufgabenhistorie sowie auch im Server Log.
gruß
Robert Stark
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- frickeflowheater
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 20
1 Jahr 4 Wochen her - 1 Jahr 4 Wochen her #5001
von frickeflowheater
frickeflowheater antwortete auf Fehler abfangen/verarbeiten - Beitrag(5001)
Hallo Herr Stark,
Aufruf klappt, vielen Dank. In der Ausführungshistorie steht ja tatsächlich schon sehr viel, was ich benötige.
Eine weiterführende Frage: Kann ich Parameter so, wie ich sie per Batch setzen kann, auch per Batch auslesen? Wenn ja, wie ist die Syntax dafür? Konnte leider nichts dergleichen in anderen Fragen oder der Doku finden. Hintergrund wäre, dass ich um die Fehlersuche zu erleichtern, gerne ein Parameter mit dem KEY der jeweiligen READ Tabelle mitlaufen lassen wollen würde. Bei Fehler könnte ich diesen KEY dann ausgeben, um die Fehlersuche zu erleichtern..
Danke und Gruß
Niko Stein
Aufruf klappt, vielen Dank. In der Ausführungshistorie steht ja tatsächlich schon sehr viel, was ich benötige.
Eine weiterführende Frage: Kann ich Parameter so, wie ich sie per Batch setzen kann, auch per Batch auslesen? Wenn ja, wie ist die Syntax dafür? Konnte leider nichts dergleichen in anderen Fragen oder der Doku finden. Hintergrund wäre, dass ich um die Fehlersuche zu erleichtern, gerne ein Parameter mit dem KEY der jeweiligen READ Tabelle mitlaufen lassen wollen würde. Bei Fehler könnte ich diesen KEY dann ausgeben, um die Fehlersuche zu erleichtern..
Danke und Gruß
Niko Stein
Letzte Änderung: 1 Jahr 4 Wochen her von frickeflowheater .
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
1 Jahr 4 Wochen her #5002
von FlowHeater-Team
gruß
Robert Stark
FlowHeater-Team antwortete auf Fehler abfangen/verarbeiten - Beitrag(5002)
Hallo Herr Stein,
Ich bin mir nicht ganz sicher was Sie genau meinen. Hier mal ein Vorschlag wie das umgesetzt werden könnte.
Sie können über den Message Heater individuelle Nachrichten während der Verarbeitung ausgeben. Hier können Sie im Nachrichtentext auch FlowHeater Parameter verwenden. Wenn Sie hier
z.B. Parameter KEY=$KEY$
Eintragen wird Ihnen das auf der Standardausgabe, sowie im Logfile mit ausgegeben. Im Anhang finden Sie ein kleines Beispiel dazu.
PS: Bei der Erstellung wurde ein Fehler aufgedeckt. Damit die Nachrichten vom Typ INFO ausgegeben werden muss aktuell das Batch Modul mit der Option /ShowDebug aufgerufen werden! Der Fehler wird mit der nächsten Version bereinigt.
Ich bin mir nicht ganz sicher was Sie genau meinen. Hier mal ein Vorschlag wie das umgesetzt werden könnte.
Sie können über den Message Heater individuelle Nachrichten während der Verarbeitung ausgeben. Hier können Sie im Nachrichtentext auch FlowHeater Parameter verwenden. Wenn Sie hier
z.B. Parameter KEY=$KEY$
Eintragen wird Ihnen das auf der Standardausgabe, sowie im Logfile mit ausgegeben. Im Anhang finden Sie ein kleines Beispiel dazu.
PS: Bei der Erstellung wurde ein Fehler aufgedeckt. Damit die Nachrichten vom Typ INFO ausgegeben werden muss aktuell das Batch Modul mit der Option /ShowDebug aufgerufen werden! Der Fehler wird mit der nächsten Version bereinigt.
gruß
Robert Stark
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- frickeflowheater
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 20
1 Jahr 4 Wochen her #5003
von frickeflowheater
frickeflowheater antwortete auf Fehler abfangen/verarbeiten - Beitrag(5003)
Hallo Herr Stark,
die Funktion des Message-Heater geht schon in die richtige Richtung. Um meine Idee bzw. Rückfrage aus der vorigen Nachricht etwas genauer zu erklären: Ich möchte bei Fehlern/Abbrüchen wissen, an welcher Stelle bzw. bei welchem Datensatz die Definition abgebrochen wird. Da reichen mir die Angaben in der Ausführungshistorie nicht.
Als Beispiel: In einem Datensatz aus der Tabelle Personalstamm steht in der Spalte für das Alter des Mitarbeiters leider der Geburtsort. Es wird eine Warnung ausgegeben. Nun möchte ich in der Ausführungshistorie, im Serverlog oder wo auch immer mit der Fehlermeldung zusammen eine Info haben, bei welchem KEY der Fehler aufgetreten ist. In dem Fall also die Personalnummer.
Probleme:
1. Aufruf über Batch-Datei kann zwar Fehler abfangen und eine individuelle Meldung übergeben (echo Ausführung abgebrochen), allerdings fehlt mir bisher der Weg, diese Meldung quasi zu "Ausführung abgebrochen bei Personalnummer 123" zu erweitern. --> in Batch-Datei als Personalnummer $KEY$ oder so ähnlich.
2. Durch die Nutzung des Message Heaters kriege ich zwar Parameter in die Ausführungshistorie oder das Serverlog, allerdings fehlt mir bisher der die Möglichkeit, die Message nur im Fehlerfall zu übergeben.
Ich hoffe, das macht es etwas verständlicher, worauf ich hinaus möchte.
Danke und Gruß
Niko Stein
die Funktion des Message-Heater geht schon in die richtige Richtung. Um meine Idee bzw. Rückfrage aus der vorigen Nachricht etwas genauer zu erklären: Ich möchte bei Fehlern/Abbrüchen wissen, an welcher Stelle bzw. bei welchem Datensatz die Definition abgebrochen wird. Da reichen mir die Angaben in der Ausführungshistorie nicht.
Als Beispiel: In einem Datensatz aus der Tabelle Personalstamm steht in der Spalte für das Alter des Mitarbeiters leider der Geburtsort. Es wird eine Warnung ausgegeben. Nun möchte ich in der Ausführungshistorie, im Serverlog oder wo auch immer mit der Fehlermeldung zusammen eine Info haben, bei welchem KEY der Fehler aufgetreten ist. In dem Fall also die Personalnummer.
Probleme:
1. Aufruf über Batch-Datei kann zwar Fehler abfangen und eine individuelle Meldung übergeben (echo Ausführung abgebrochen), allerdings fehlt mir bisher der Weg, diese Meldung quasi zu "Ausführung abgebrochen bei Personalnummer 123" zu erweitern. --> in Batch-Datei als Personalnummer $KEY$ oder so ähnlich.
2. Durch die Nutzung des Message Heaters kriege ich zwar Parameter in die Ausführungshistorie oder das Serverlog, allerdings fehlt mir bisher der die Möglichkeit, die Message nur im Fehlerfall zu übergeben.
Ich hoffe, das macht es etwas verständlicher, worauf ich hinaus möchte.
Danke und Gruß
Niko Stein
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
1 Jahr 4 Wochen her #5004
von FlowHeater-Team
gruß
Robert Stark
FlowHeater-Team antwortete auf Fehler abfangen/verarbeiten - Beitrag(5004)
Hallo Herr Stein,
das geht aktuell leider nicht aber eine gute Idee wie im Fehlerfall weitere Infos ausgegeben werden können. Ich habe die Anforderung mal auf die Liste der demnächst umzusetzenden Features gesetzt. Wird wahrscheinlich mit der nächsten Version umgesetzt.
das geht aktuell leider nicht aber eine gute Idee wie im Fehlerfall weitere Infos ausgegeben werden können. Ich habe die Anforderung mal auf die Liste der demnächst umzusetzenden Features gesetzt. Wird wahrscheinlich mit der nächsten Version umgesetzt.
gruß
Robert Stark
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
Weniger
Mehr
- Beiträge: 10
1 Jahr 3 Wochen her #5008
von FlowHeater-Team
FlowHeater-Team antwortete auf Fehler abfangen/verarbeiten - Beitrag(5008)
Hallo Herr Stein,
die Idee gefiel mit so gut, dass sie gleich umgesetzt wurde. Mit der aktuellen Beta Version können Sie pro Step ein Individuelles Logging einrichten, siehe Screenshot.
Hier können Sie im Freitext u.a. auch FlowHeater Parameter oder aber Umgebungsvariablen verwenden. Je nachdem was Sie angehakt haben wird dieser Text pro Zeile, bei einer Warnung oder aber bei einem Fehler ausgegeben.
Schauen Sie sich das mal an. Evtl. Wünschen können gerne noch umgesetzt werden.
Link Download Beta Version
die Idee gefiel mit so gut, dass sie gleich umgesetzt wurde. Mit der aktuellen Beta Version können Sie pro Step ein Individuelles Logging einrichten, siehe Screenshot.
Hier können Sie im Freitext u.a. auch FlowHeater Parameter oder aber Umgebungsvariablen verwenden. Je nachdem was Sie angehakt haben wird dieser Text pro Zeile, bei einer Warnung oder aber bei einem Fehler ausgegeben.
Schauen Sie sich das mal an. Evtl. Wünschen können gerne noch umgesetzt werden.
Link Download Beta Version
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- frickeflowheater
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 20
1 Jahr 3 Wochen her #5009
von frickeflowheater
frickeflowheater antwortete auf Fehler abfangen/verarbeiten - Beitrag(5009)
Moin Herr Stark,
die Funktion klingt wirklich gut. Lässt sich die Beta als 2. Version auf dem gleichen System installieren?
Ich würde damit ungerne den produktiven Server Manager überschreiben.
Danke und Gruß
Niko Stein
die Funktion klingt wirklich gut. Lässt sich die Beta als 2. Version auf dem gleichen System installieren?
Ich würde damit ungerne den produktiven Server Manager überschreiben.
Danke und Gruß
Niko Stein
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
1 Jahr 3 Wochen her #5010
von FlowHeater-Team
gruß
Robert Stark
FlowHeater-Team antwortete auf Fehler abfangen/verarbeiten - Beitrag(5010)
Hallo Herr Stein,
für den FlowHeater Server funktioniert das leider nicht ohne Installation. Für Produktivsysteme kann eine BETA Version eh nicht empfohlen werden!
Sie können das Feature aber mit dem Designer oder Batch Modul auf Ihrem System auch ohne Installation testen. Hierzu einfach das ZIP Archiv entpacken und im BIN Verzeichnis die FlowHeater.exe (=Designer) bzw. FHBatch.exe (=Batch Modul) ausführen. Falls das durch die UAC geblockt wird müssten Sie manuell diese Dateien entsperren. Hierzu kann der u.s. PowerShell Befehl verwendet werden
Get-ChildItem -Path 'C:\Pfad anpassen\*.*' -Recurse | Unblock-File
für den FlowHeater Server funktioniert das leider nicht ohne Installation. Für Produktivsysteme kann eine BETA Version eh nicht empfohlen werden!
Sie können das Feature aber mit dem Designer oder Batch Modul auf Ihrem System auch ohne Installation testen. Hierzu einfach das ZIP Archiv entpacken und im BIN Verzeichnis die FlowHeater.exe (=Designer) bzw. FHBatch.exe (=Batch Modul) ausführen. Falls das durch die UAC geblockt wird müssten Sie manuell diese Dateien entsperren. Hierzu kann der u.s. PowerShell Befehl verwendet werden
Get-ChildItem -Path 'C:\Pfad anpassen\*.*' -Recurse | Unblock-File
gruß
Robert Stark
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- frickeflowheater
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 20
1 Jahr 3 Wochen her #5011
von frickeflowheater
frickeflowheater antwortete auf Fehler abfangen/verarbeiten - Beitrag(5011)
Hallo Herr Stark,
alles klar, vielen Dank. Ich versuche, das zeitnah zu testen.
Viele Grüße
Niko Stein
alles klar, vielen Dank. Ich versuche, das zeitnah zu testen.
Viele Grüße
Niko Stein
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
Ladezeit der Seite: 0.322 Sekunden