Page 1 sur 1
le nom de toutes les fonctions qui ont appellés

Publié:
05 Oct 2010 à 10:26
par Baxter
bonjour
je viens de voir cette astuce :
http://forum.dominoarea.org/nom-de-la-f ... 25825.html
c'est du javascript, mais j'aimerais savoir si c'est possible de le faire en Lotus Script.
j'ai bien vu dans les astuces sur les erreurs qu'on pouvait récupérer la fonction juste au dessus.
mais j'aurrai aimé savoir si l'on pouvait faire la liste de toute les fonction qui on appellé depuis le déclenchement ?

Publié:
05 Oct 2010 à 10:28
par Michael DELIQUE
salut
je vois ton besoin, tu veux pouvoir renvoyer toute le cheminement de tes appels.
que je sache c'est aps faisable en LS. ou alors faut le gérer dans une variable à dans chaque fonction

Publié:
05 Oct 2010 à 15:20
par nemrod93
Bonjour,
j'ai contourné ce type de problème en créant une base de log (1 vue, 1 masque) et à chaque appel, je créais un document dans la log.
Je sais, c'est pas top mais au moins je savais ce qu'il se passait.

Publié:
05 Oct 2010 à 15:36
par Baxter
je viens de proposer ta solution...
mon cp a décrocher le téléphone pour me réserver une chambre capitonné lol.
l'idée est bonne mais pas applicable, la volumétrie est bcp trop importante.

Publié:
05 Oct 2010 à 15:44
par Michael DELIQUE
le probleme baxter
c'est que je n'ai pas connaissance d'objet, méthode en LS ou en API qui permette de faire ce que j'ai fais avec le javascript.
ça doit bien être en mémoire quelque part mais ou... et est-ce accessible simplement.
il ya bien par exemple une api pour récupérer le nom d'une bibliotheque de script, mais c'est pas stable et ça te fais planter ton client une fois sur 2.
même openlog sur openntf ne le propose pas hormis le nom de la fonction ayant dirctement appellé la fonction qui bug.

Publié:
05 Oct 2010 à 15:46
par nemrod93
Re
je savais que c'était pas top mais de là à être interné
Sinon, c'est quoi la volumétrie, et le besoin de savoir ce qu'il s'est passé (la journée, une semaine...)
tu as l'option j"écris dans un txt et je le zip (ok je prends la chambre d'à côté)


Publié:
05 Oct 2010 à 15:59
par Maxime Choucroun
C'est faisable dans une certaine mesure. On peut logguer les api domino en utilisant les api C lotus-domino avec une dll.
(exemple: ouverture de base, modification et sauvegarde du documents, etc... et il y en a des floppées)
Cela s'appelle "Extension Manager" et l'exemple est extmngr.
Maintenant, il faut etre motivé pour débugguer de la sorte. Mais la consommation de la CPU t'evite la chambre capitonnée....
Sinon, Michael t'a deja tout dit (du moins il me semble...)

Publié:
05 Oct 2010 à 23:06
par roubech
j'ai pas le temps de vérifier, mais justement, il me semblait qu'OpenLog le faisait ?

Publié:
06 Oct 2010 à 08:17
par Michael DELIQUE
j'ai regardé récemment,
ça le faisait toujours pas
mais je l'ai peut être loupé

Publié:
06 Oct 2010 à 16:41
par roubech
je viens de jeter un oeil dans ma log au bureau, j'ai bien une section Stack Trace avec par exemple :
PUSHMAILMANAGER,CREATEFILE,243
PUSHMAILMANAGER,PROCESS,539
7A94598,INITIALIZE,8
On retrouve l'initialize de mon agent qui instancie un objet PushMailManager dont la classe est déclarée dans une lib du même nom
l'agent appelle la méthode publique Process qui elle même appelle la méthode privée CreateFile
Edit : OpenLog 1.5 BETA

Publié:
07 Oct 2010 à 07:18
par Baxter
merci je vais regarder openlog de plus près

Publié:
07 Oct 2010 à 08:12
par Michael DELIQUE
je vais aussi regarder de plus pres le premier qui trouve post

Publié:
07 Oct 2010 à 09:57
par Michael DELIQUE
je viens de rejeter un oeil sur openlog
le stacktrace enregistre a chaque fonction la fonction en cours pour la faire remonter.
c'est un traitement à chaque fonction et non un traitement unique comme le code js que j'ai posté peut le faire.