2 Minuten
iLogic: Logging
Neben dem Modellbrowser stellt Inventor einen eigenen Tab zur Einsicht des iLogic Log bereit. In dieser Umgebung können Log Statements während der Ausführung von einer iLogic eingesehen werden:
Logger Settings
Logging Funktionen unterstützen naturgemäß verschiedene Level. Es gibt Logstatements, die lediglich zur Information dienen, aber auch kritischere Statements, die ggf, die Aufmerksam und das Eingreifen des Users erfordern. Unter Tools > Options > iLogic Configuration
kann der Log Level definiert werden. Die Einträge sind hierarchisch zu betrachten und loggen stets nur alle Level, die unter dem gewählten Levels verortet sind.
Die verfügbaren Log Level lauten:
- Trace
- Debug
- Info
- Warn
- Error
- Fatal
- None
Beispiel:
Wählt man den Log Level Info
aus, erscheinen keine Meldungen mit dem Level Debug
und Trace
. Es erscheinen lediglich Logs zu den Leveln Info
, Warn
, Error
, Fatal
und None
.
Log Statement erzeugen
Welchen Log Level einem Log Statement zugewiesen wird, legt der Nutzer in seinem iLogic Code selber fest. Um ein einfaches Log Statement zu erzeugen reicht folgendes Kommando:
Logger.Info("This is an info message shown in the logger.")
Natürlich können auch Variablen in Logstatements integriert werden. Auch bietet iLogic ein nützliches Subset an Funktionen, die ein Debuggen erleichtern können. Zwei dieser Funktionen sollen hiermit vorgestellt werden:
ThisDoc.Filename()
: Gibt den Dateinamen aus, in dem der iLogic Code ausgeführt wird. Setzt man in den Klammern den WertTrue
, wird der gesamte Dateiname inkl. Dateiendung ausgegeben. Setzt man den WertFalse
wird auf die Dateiendung verzichtet.iLogicVb.RuleName
: Gibt den Namen der iLogic aus, die ausgeführt wird.
Kombiniert man diese beiden Funktionen und setzt diese direkt als erste Zeile in eine iLogic, kann man dem Logger entnehmen, ob die iLogic ausgeführt wurde und in welchem Dokument sie ausgeführt wurde. Für das folgende Beispiel wurde eine iLogic mit dem Dateinamen 00_DebugAndTesting.vb
erstellt:
Logger.Info(iLogicVb.RuleName & "| " & ThisDoc.FileName(True) & " | iLOGIC TRIGGERED")
Das Ergebnis:
Ressources
- Message Box functions in iLogic reference
- Inventor 2019.1: Logging in iLogic (iLogic-Protokoll)
- To Create Log Statements