Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: ThomasM am 14.09.04 - 14:50:05
-
Hallo,
ich habe folgendes Problem:
Ich habe einen sheduled agent welcher auf -any server- alle 30 min. läuft.
Dieser Agent sendet auf jedem entsprechenden Server Notificationen zu entsprechenden Dokumenten auf dem jeweiligen Server an die jeweiligen Benutzer.
Der Agent läuft auch sehr gut auf 29 von 30 Servern, nur auf einem Server bricht er mit der Fehlermeldung "Object variable not set(91)" ab.
Ausser ich starte den Agent mit "run" von Hand, dann läuft er einwandfrei durch.
Das Problem bei der ganzen Sache ist, das sehr viele Functions dran hängen und ich nicht genau weis in welcher Function er abricht.
Vieleicht weiss ja jemand von euch eine Lösung.
Thomas
-
Tipp:
Errorhandler einbauen (On error statement, Erl function, GetThreadInfo function, Error function, NotesLog - Klasse; mehr darüber in der Designer Hilfe)
Dann hast du im Idealfall den genauen Ort des Fehlers.
-
Hi,
du kannst auch Print - Anweisungen einbauen. Die Ausgaben erscheinen dann im Notes-Protokoll (log.nsf) in Dokumeten der Ansicht "Verschiedene Ereignisse".
Axel
-
Hi,
du kannst auch Print - Anweisungen einbauen. Die Ausgaben erscheinen dann im Notes-Protokoll (log.nsf) in Dokumeten der Ansicht "Verschiedene Ereignisse".
Axel
Das halte ich in diesem Fall für keine gute Idee (wenn sich das nicht auf ErrorHandler bezieht, Axel !), ebensowenig das Coding von Thomas: Jedes Modul braucht ein ErrorHandling, was mindestens folgendes tut:
On Error Goto ErrorHandler
Exit Sub / Function
ErrorHandler:
Print "An error has occured: " & Error$ & " in line " & Cstr (Erl)
Exit Sub / Function
End Sub / Function
Das ist für JEDES Modul genauso wichtig wie die Regel "schreibe keine Zeile Code, ohne vorher Option Declare gesetzt zu haben (was jetzt bei R6 glücklicherweise Standard ist)
Bernhard
PS: Bei server based agents landen diese Fehlermeldungen dann - wqie von Axel schon gesagt - im Server-Log.
-
Das halte ich in diesem Fall für keine gute Idee (wenn sich das nicht auf ErrorHandler bezieht, Axel !), ebensowenig das Coding von Thomas: Jedes Modul braucht ein ErrorHandling, was mindestens folgendes tut:
Verstehe ich nicht. Schreib doch mal bitte, was an dem "Coding" von mir keine gute Idee ist.
Du benutzt doch sogar auch einige der Funktionen, die ich genannt habe.
-
Das halte ich in diesem Fall für keine gute Idee (wenn sich das nicht auf ErrorHandler bezieht, Axel !), ebensowenig das Coding von Thomas: Jedes Modul braucht ein ErrorHandling, was mindestens folgendes tut:
Hi,
genau wie Thomas würde mich das auch mal interessieren, warum das keine gute Idee sein soll. Als Primitiv-Debugging taugt die Print-Anweisung allemal. So nach dem Motto "Ich bin hier und die Variable xy hat den Wert 4711". Das lässt u.U. schon einige Rückschlüsse zu.
Axel
-
Ja, ja - wenn Thomas fragt und Thomas antwortet ;D
Du warst natürlich nicht gemeint, Herr Völk (<- das nur zur Unterscheidung ;)), sondern Herr Thomas M.
Zur allgemeinen Klarstellung: Ich habe nur Thomas V.'s Hinweis etwas untersetzt und stimme vollkommen mit seinem Posting überein :)
@Axel: Wenn Du mit "Print-Anweisungen" die Ausgabe von Error$ und Erl in das Log gemeint hast, stimme ich auch mit Dir überein.
Bernhard
-
@Axel: Wenn Du mit "Print-Anweisungen" die Ausgabe von Error$ und Erl in das Log gemeint hast, stimme ich auch mit Dir überein.
Das habe ich auch gemeint.
Aber man kann auch die Print-Anweisung dazu benutzen, sich an bestimmten, relevanten Stellen des Agenten die Variableninhalte ausgeben zu lassen. Das lässt oft schon Rückschlüsse zu. Mir ist klar, das diese Methode auch Grenzen hat, aber zu einer ersten Analyse taugt diese Methode allemal.
Axel