#include vhLib.Macro EWLOG ;E'WMS logging [ 05/01/2003 10:52 PM ] #define GeefLijnInCode $STACK($STACK-2,"PLACE") ERROR(sExec) New Exception,Info #dim Info As %String = $$GeefInfo(sExec) #dim Exception As TECH.Exceptions.Exception = ##class(TECH.ExceptionHandler).Catch() Set Info = Info_$C(13,10)_Exception.ToString() Do ##class(vhLib.Logger).%New().Warning("Exception",$$$GeefLijnInCode_" : "_Info) Quit WARN(sExec) New Info Set Info = $$GeefInfo(sExec) Do ##class(vhLib.Logger).%New().Warning($$ParseActie(Info),$$$GeefLijnInCode_" : "_Info) Quit INFO(sExec) New Info Set Info = $$GeefInfo(sExec) Do ##class(vhLib.Logger).%New().Info($$ParseActie(Info),$$$GeefLijnInCode_" : "_Info) Quit DEBUG(sExec) New Info Set Info = $$GeefInfo(sExec) Do ##class(vhLib.Logger).%New().Debug($$ParseActie(Info),$$$GeefLijnInCode_" : "_Info) Quit ParseActie(Info) New Actie , StringIterator , Stop , Value set Actie = "" set Stop = 0 set StringIterator = ##class(TECH.StringIterator).%New(Info) while $$$Not(Stop) && (StringIterator.HasNext()) { set Value = StringIterator.Next() set:Value?1N Stop = 1 set:Value?1":" Stop = 1 set:$$$Not(Stop) Actie = Actie _ Value } quit $$$Trim(Actie) GeefInfo(sExec) New Info try { If sExec '= "" { xecute "set Info = "_$P(sExec,";",2,99) }Else{ Set Info = "[sExec is leeg]" } } catch { set Info = "sExec: "_sExec_$C(13,10)_##class(TECH.ExceptionHandler).Catch().ToString() } quit Info ; Verwijderen van oude logging CLEAN(Dagen) Set:'$G(Dagen) Dagen=356 Set Dat="" For Set Dat=$O(^EWLOG(Dat)) Quit:Dat=""!(Dat>($H-Dagen)) Kill ^EWLOG(Dat) Quit MAIL(Datum,Key1,Key2,Key3,UserIds) New VolgNr,Txt,Keys Set Txt=0 Set Datum=+$G(Datum,$H) Set VolgNr="" For Set VolgNr=$O(^EWLOG(Datum,VolgNr)) Quit:VolgNr="" Do .Set Rec=^EWLOG(Datum,VolgNr) .If $L($G(Key1)) Quit:Rec'[Key1 .If $L($G(Key2)) Quit:Rec'[Key2 .If $L($G(Key3)) Quit:Rec'[Key3 .Set Txt=Txt+1,Txt(Txt)=$P(Rec,"`",4)_"~" Quit:Txt=0 Set Keys="Keys:"_$$EXTDATE^vhLib.DataTypes(Datum,"DK") If $L($G(Key1)) Set Keys=Keys_";"_Key1 If $L($G(Key2)) Set Keys=Keys_";"_Key2 If $L($G(Key3)) Set Keys=Keys_";"_Key3 Set MailId=$$SYSTEM^vhMAIL("","ERROR LOG",Keys,UserIds,.Txt,,"U","A") Quit ;