# Error/Exception Handling - Best practice?



## Mic29de (26 April 2022)

Hallo zusammen,
sind euch Techniken, Methoden, Pattern oder Literatur bekannt, wie man ein gutes Fehler-Management implementiert?
Konkret stehe ich vor solchen Fragen wie:

welchem Schema sollten Fehlernummern folgen?
sollte der Ursprung des Fehlers (Module und Submodule) in der Nummer codiert sein?
werden Fehlernummern während der Laufzeit generiert oder sind die hart gecodet?
sollten Fehlernummern in einer Liste (Datenbank) geführt sein?
wie geht man mit Folgefehlern um? Stapelt man die in einer Liste?
wie verhindere ich Dopplungen von Fehlernummern bei unabhängigen Systemen?
Diese Thematik man ein riesiges Fass auf, wenn man ein Lösung finden will, die sowohl präzise Fehlernummern generiert und trotzdem leicht im Code zu benutzen ist. Daher suche ich nach qualitativen Input. Ich hoffe ihr könnt mir einen Tipp geben wo ich sowas finde.

Vielen Dank im Voraus 
Micha


----------



## JesperMP (26 April 2022)

Kann nur beschreiben was ich selber tun.

welchem Schema sollten Fehlernummern folgen? Einfach fortlaufend.
sollte der Ursprung des Fehlers (Module und Submodule) in der Nummer codiert sein? Die Namensrereferenzen von die direkt relevante Feld-Komponente ist Teil von die Fehlerbeschreibung. Hat nichts mit der Fehlernummer zu tun. Es können mehrere Feld-Komponente für ein Fehler relevant sein.
werden Fehlernummern während der Laufzeit generiert oder sind die hart gecodet? Kann beide sein. Ich verwende nur feste Fehlernummern. 
sollten Fehlernummern in einer Liste (Datenbank) geführt sein? In die meistens HMI Programme werden die Alarmmeldungen schon in eine Liste aufgeführt.
wie geht man mit Folgefehlern um? Stapelt man die in einer Liste? Ich versuche Folgefehler zu 'muten'. Eine perfekte muting von Folgefehler ist aber schwierig.
wie verhindere ich Dopplungen von Fehlernummern bei unabhängigen Systemen? Der Fehlernummer ist immer Unik.


----------



## Heinileini (26 April 2022)

JesperMP schrieb:


> wie verhindere ich Dopplungen von Fehlernummern bei unabhängigen Systemen? Der Fehlernummer ist immer Unik.


Hmmm. Wenn die FehlerNummern systemübergreifend unique sein sollen, dann sind die Systeme aber zumindest in Bezug auf die FehlerNummern nicht voneinander unabhängig!? 
Die FehlerNummern können nur innerhalb eines Systems eindeutig sein.


----------



## s_kraut (27 April 2022)

Mic29de schrieb:


> Hallo zusammen,
> sind euch Techniken, Methoden, Pattern oder Literatur bekannt, wie man ein gutes Fehler-Management implementiert?
> Konkret stehe ich vor solchen Fragen wie:
> 
> welchem Schema sollten Fehlernummern folgen?


Unique


Mic29de schrieb:


> sollte der Ursprung des Fehlers (Module und Submodule) in der Nummer codiert sein?


warum nicht? der Zahlenraum ist in der Regel groß genug, dass man für jedes Submodul eine angemessene Teilmenge des Zahlenraums reservieren kann


Mic29de schrieb:


> werden Fehlernummern während der Laufzeit generiert oder sind die hart gecodet?


Philosophiesache - wir coden es hart, weil die Doku auch hart gecodet ist und man bei Nachfragen besser tracen kann.


Mic29de schrieb:


> sollten Fehlernummern in einer Liste (Datenbank) geführt sein?


unbedingt


Mic29de schrieb:


> wie geht man mit Folgefehlern um? Stapelt man die in einer Liste?


genau. wobei am interessantesten immer der erste Fehler in der Kette ist. Je detaillierter die Folgeereignisse auch getrackt werden desto besser lernt man das System was da passiert.


Mic29de schrieb:


> wie verhindere ich Dopplungen von Fehlernummern bei unabhängigen Systemen?


wie du selber schon vorgeschlagen hast.


Mic29de schrieb:


> Diese Thematik man ein riesiges Fass auf, wenn man ein Lösung finden will, die sowohl präzise Fehlernummern generiert und trotzdem leicht im Code zu benutzen ist. Daher suche ich nach qualitativen Input. Ich hoffe ihr könnt mir einen Tipp geben wo ich sowas finde.


Wenn du deine Fehlernummern echt in der Laufzeit generierst, dann fällt mir spontan ein Thema Verriegelungsmatrix, google wird dir dazu auch eine passende Norm vorschlagen. 
Da drängt sich eine Nomenklatur auf Ursache->Wirkung, das könnte sich recht dynamisch aufziehen lassen ... oder für x€ haben Anbieter wie Siemens schon Lösungen in der Schublade.


Mic29de schrieb:


> Vielen Dank im Voraus
> Micha


Danke für die Anregung  🤠


----------

