IV8AppsLogger
rc.apps.logger
führt eine reguläre enaio®-Protokollierung in den bekannten EVN-Dateien durch. Damit können direkt aus dem Skriptcode heraus Flow- oder auch Fehlerprotokolleinträge geschrieben werden.
Methoden
flow(BSTR Text)
warning(BSTR Text)
info(BSTR Text)
error(BSTR Text)
functionEntry(BSTR Function, BSTR Parameters)
functionExit(BSTR Function, VARIANT ReturnValue);
flowEx(BSTR File, UINT Line, BSTR Function, UINT Level, BSTR Text)
warningEx(BSTR File, UINT Line, BSTR Function, UINT Level, BSTR Text)
infoEx(BSTR File, UINT Line, BSTR Function, UINT Level, BSTR Text)
errorEx(BSTR File, UINT Line, BSTR Function, UINT Level, BSTR Text)
functionEntryEx(BSTR File, UINT Line, BSTR Function, UINT Level, BSTR Parameters)
functionExitEx(BSTR File, UINT Line, BSTR Function, UINT Level, VARIANT ReturnValue)
Methoden mit Suffix "Ex" erlauben mehr Kontrolle.
Bei Methoden ohne Suffix "Ex" werden Defaultwerte verwendet:
File
– Eventname, bspw.KernelBeforeJob:dms.GetObjectDetails
Function – subfunction
Line – 0
Level
– steuert dediziert in welchem Protokollierungslevel der entsprechende Flow-Eintrag zu erscheinen hatflow - 5
warning - 3
info - 3
error - 0
functionEntry - 4
functionExit - 4
Rückgabewert bei functionExit
wird nach String konvertiert, falls möglich (bei nicht konvertierbarem Rückgabewert wird keine Exception generiert)
Code
const scriptName = "testLogger";
const functionName = "tst";
rc.apps.logger.flow ("flow sample");
rc.apps.logger.warning("warning sample");
rc.apps.logger.info ("info sample");
rc.apps.logger.error ("error sample");
rc.apps.logger.functionEntry("func1","input: 111");
rc.apps.logger.functionExit ("func1",1);
rc.apps.logger.functionExit ("func1","abc");
rc.apps.logger.functionExit ("func1",false);
rc.apps.logger.flowEx (scriptName,15,functionName,2,"flowEx sample");
rc.apps.logger.warningEx (scriptName,16,functionName,2,"warningEx sample");
rc.apps.logger.infoEx (scriptName,17,functionName,2,"info sample");
rc.apps.logger.functionEntryEx(scriptName,18,functionName,2,"input: 111");
rc.apps.logger.functionExitEx (scriptName,19,functionName,2,1);
rc.apps.logger.functionExitEx (scriptName,20,functionName,2,"abc");
rc.apps.logger.functionExitEx (scriptName,21,functionName,2,false);
// Etwas böses, trotzdem soll der Server das Skript nicht abbrechen
rc.apps.logger.functionExitEx (scriptName,21,functionName,2,[1,2,3]);
// Am Ende, damit alles davor im FlowBuffer erscheint
rc.apps.logger.errorEx (scriptName,24,functionName,0,"errorEx sample");