deep

a Cross Development Platform for Java

User Tools

Site Tools


dev:logging

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
dev:logging [2015/04/18 08:55] – [Logging] ursgrafdev:logging [2022/12/20 11:29] (current) – [Error Reporting] ursgraf
Line 1: Line 1:
 ====== Logging and Error Reporting ====== ====== Logging and Error Reporting ======
 ===== Logging ===== ===== Logging =====
-The class //StdStreams// in the package //ch.ntb.inf.deep.host// defines three output streams.+The class //StdStreams// in the package //org.deepjava.host// defines three output streams.
  
   * log: is used for normal logging (e.g. successful compilation)   * log: is used for normal logging (e.g. successful compilation)
Line 14: Line 14:
  
 ===== Error Reporting ===== ===== Error Reporting =====
-Für die Fehler-Ausgabe sollte die Klasse ErrorReporter im Package //ch.ntb.inf.deep.host// verwendet werdenBei jeder Ausgabe eines Fehlers wird die statische Variable //nofErrors// inkrementiertDer Launcher überprüft vor jedem Schritt diese Variable und bricht nach einem Fehler ab.+The class ''org.deepjava.host.ErrorReporter'' is used for reporting errorsEach error increments //nofErrors//The launcher checks this variable and stops if necessary.
  
-Der ErrorReporter benötigt die Datei ErrorMsg.txt im rsc OrdnerIn dieser Datei werden die Fehler-Nummern mit ihren Beschreibungen und möglichen Lösungen eingetragen.+The ''ErrorReporter'' needs the file //ErrorMsg.txt// in the folder //rsc//This text file contains error numbers, descriptions and possible solution. The methods //error(int errNr)// and //error(int errNr, String additonalInfo)// access //ErrorMsg.txt//
  
-Die Methoden error(int errNr) und error(int errNr, String additonalInfogreifen auf ErrorMsg.txt zu. Die Methoden suchen in der Datei die übergebene Fehlernummer, und geben diese mit der Beschreibung und falls vorhanden mit den möglichen Lösungen aus. Die zusätzlichen Informationen, wie z.B. Datei- und Zeilennummerangaben, werden hinten angefügt. +Further, there is a method //error(String errMsg)//It allows for outputting a message without error number.
- +
-Im Weitern gibt es noch die Methode error(String errMsg), diese gibt die Fehlermeldung direkt aus, ohne dass eine Fehlernummer dafür definiert werden  +
-muss.+
  
 ==== Stopping after Error ==== ==== Stopping after Error ====
-Der Launcher prüft vor jedem weiteren Schritt, ob kein Fehler aufgetreten istWas aber passiertwenn innerhalb eines Schrittes (z.Bder Berechnung der Codegenerierungein Fehler auftritt, und zwar so, dass dieser Teil nicht mehr abgeschlossen werden kannDas ist z.B. der Fall, wenn kein Register mehr alloziert werden kann. Unter Umständen ist die Aufruferkette sehr gross und wir wollen nur im äussersten Rufer, dem Launcher jeweils //nofErrors// prüfen. \\ +The launcher checks if no error occured before starting the next stepHoweverwhat happens if there is an error within a step (e.gwhile allocating registersand it's not possible to complete this stepWe do not want to check for //nofErrors// within each step. \\ 
-Alle Methoden sollen so geschrieben werden, dass im Fehlerfall der ErrorReporter aufgerufen wird, aber die Methode trotzdem einen brauchbaren Rückgabewert liefert (also z.Beinfach das Register oder den Node 0) und so die äusseren Methoden durchlaufenU.U. können auch spezielle Objekte extra dafür geschaffen werden. \\ +Every method should call the error reporter in case of an error and at the same time it should return a useable value (e.gregister or node 0). If necessary special objects should be created for this purpose. \\ 
-Es macht trotzdem Sinn daneben auch Assertions einzubauenDiese sind dann nützlich, wenn wir als Entwickler den Fehler genau zu lokalisieren versuchen.+Use assertions whenever possibleThey will be switched of in the productive code but can be enabled during the development process.
 \\  \\ 
 ----  ---- 
Line 131: Line 128:
 |808|bypass is not unlocked|  | |808|bypass is not unlocked|  |
 |809|programming failed|  | |809|programming failed|  |
 +|810|programmer not found|  |
 +|811|class to connect to programmer not found|  |
 +|812|plugin not found|  |
 +|813|BDI packet wrong, try to reset BDI|  |
 +|814|ready bit not set, try to reset BDI|  |
  
 === Debugger: 900 - 999 === === Debugger: 900 - 999 ===
dev/logging.1429340125.txt.gz · Last modified: 2016/02/25 13:33 (external edit)