Mise en forme de code: pensez à utiliser les balises [ tcl ] et [ /tcl ] (sans les espaces bien sûr) autour de vos codes tcl afin d'avoir un meilleur rendu et une coloration syntaxique. x


Live Bug Tracer (version actuelle : 2.0)
#1
Description :

Live Bug Tracer est une boîte à outils de déboguage. Ce script s'adresse aux développeurs Tcl, mais aussi à l'utilisateur lambda qui y trouvera plusieurs fonctionnalités simples d'utilisation et potentiellement très utiles.

Les retours du débogueur s'affichent en partyline; vous devez donc vous y connecter sans quoi vous ne verrez rien.


Fonctionnalités :
  • Affichage (et log) automatique du backtrace si votre eggdrop rencontre une erreur. En cas d'erreurs redondantes, seule la première occurrence est affichée. Plus besoin d'avoir activé la commande .set en partyline pour pouvoir afficher le backtrace d'une erreur, plus besoin non plus d'être là au bon moment ni d'être hyper rapide pour taper .set errorInfo après qu'une erreur se soit produite. Exit des prises de tête pour traquer un bug qui se produit une fois par mois et pour lequel on n'est jamais là au bon moment pour observer ce qui s'est passé.
  • Différenciation erreur catchée / non catchée et possibilité de n'afficher que les unes, les autres, ou les deux.
  • Système anti-boucle infinie permettant de détecter / interrompre / afficher les types courants de boucles infinies. Un eggdrop qui cesse de répondre, consomme beaucoup de temps processeur et quitte en ping timeout vient vraisemblablement d'exécuter une boucle infinie.
  • Surveillance des lectures / écritures / suppression d'une variable statique.
  • Surveillance des lectures / écritures / suppression d'une variable temporaire dans une procédure (n'existant que durant l'exécution de la procédure).
  • Surveillance des appels / retours / suppression / renommage d'une procédure.
  • Surveillance des appels / retours / suppression / renommage d'une commande.
  • Traçage de l'exécution d'une procédure ligne par ligne.

Commandes :

.autobacktrace <argument(s)>
Permet de gérer le backtrace automatique des erreurs.
Arguments acceptés :
+/-errors
Active/désactive le backtrace automatique des erreurs non-catchées.
+/-catch
Active/désactive le backtrace automatique des erreurs catchées.
status
Affiche le statut du backtrace automatique.
.loopfuse <on/off/status>
Permet d'activer/désactiver la protection anti-boucle infinie, ou d'afficher son statut.
.watch <$variable/procédure/commande> [off]
Commence ou cesse la surveillance d'une variable statique, d'une procédure ou d'une commande.
.watch <$variable> in <procédure> [off]
Commence ou cesse la surveillance d'une variable temporaire dans la procédure spécifiée. Vous ne pouvez avoir qu'une seule surveillance de ce type à la fois.
.trace <procédure> [off]
Commence ou cesse le traçage d'une procédure.
Dans les lignes affichées lors d'un traçage de procédure, "rec" indique la profondeur de récursion et "lvl" le niveau de pile.
.debuglist
Affiche tous les trace actifs posés par Live Bug Tracer.
Certains trace peuvent être suivis de la mention "(latent)", ce qui signifie qu'ils ne sont actifs que durant l'exécution d'une certaine procédure.
.detachdebuggers
Cesse tous les traçages/surveillances que vous avez pu mettre au moyen des commandes .trace ou .watch.

Remarque : toutes les commandes sont disponibles en 2 versions : publique et partyline.


Screenshots :

[Image: http://img715.imageshack.us/img715/6030/lbterror.png]

[Image: http://img51.imageshack.us/img51/7697/lbtloopfuse.png]

[Image: http://img571.imageshack.us/img571/1584/...riable.png]

[Image: http://img28.imageshack.us/img28/5632/lbtwatchproc.png]

[Image: http://img13.imageshack.us/img13/4426/lb...ommand.png]

[Image: http://img21.imageshack.us/img21/3065/lb...inproc.png]

[Image: http://img838.imageshack.us/img838/5870/lbttrace.png]


Changelog :
Citation :v1.0
  • 1ère version
v2.0
  • Trop de nouveautés et de changements pour tous les énumérer, la v1.0 possédait pour toute fonctionnalité d'afficher le backtrace des erreurs en temps réel.
  • Passage sous licence Creative Commons

Téléchargement :

Live Bug Tracer v2.0
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
#2

Nouvelle version disponible : v2.0

Changelog partiel :
Citation :v2.0
  • Trop de nouveautés et de changements pour tous les énumérer, la v1.0 possédait pour toute fonctionnalité d'afficher le backtrace des erreurs en temps réel.
  • Passage sous licence Creative Commons
Veuillez vous reporter à ce post pour une description détaillée des nouveautés.

Téléchargement :

Live Bug Tracer v2.0

Laissez vos commentaires / suggestions / rapports de bugs.
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
#3
Bonjour,
J'ai un petit problème sur un de mes eggdrops quand je le lance avec ce script :

tcl
[21:39:20] invalid command name "::tcl::info::commands"
    while executing
"::tcl::info::commands ::LiveBugTracer::uninstall"
    (file "scripts/Live_Bug_Tracer.tcl" line 1)



Voici plus d'informations surmon eggdrop :
Code :
Eggdrop v1.8.0+unsignedtraffic (C) 1997 Robey Pointer (C) 2010 Eggheads
  (patches: CVS 1320962776 unsignedtraffic)
Configured with:
Compiled with: IPv6, TLS, handlen=32

Eggdrop v1.8.0+unsignedtraffic (C) 1997 Robey Pointer (C) 2010 Eggheads
[21:31:46] --- Loading eggdrop v1.8.0+unsignedtraffic (Sun Jun 24 2012)
[21:31:46] Listening at telnet port 3333 (all).
[21:31:46] Module loaded: channels
[21:31:46] Module loaded: dns
[21:31:46] Module loaded: transfer         (with lang support)
[21:31:46] Module loaded: share
[21:31:46] Module loaded: server
[21:31:46] Module loaded: ctcp
[21:31:46] Module loaded: irc
[21:31:46] Module loaded: notes            (with lang support)
[21:31:46] Module loaded: console          (with lang support)
[21:31:46] Module loaded: blowfish
[21:31:46] Module loaded: uptime

Je ne comprend pas qu'il arrive pas a avoir une commande comme ::tcl::info::commands, quelqu'un à une idée ?
#4
Test fait avec un "Eggdrop v1.8.0+stripmoar" (1080003 CVS 1340407724 stripmoar), ça fonctionne.
Peut-être devrais-tu mettre ton egg à jour, ce problème semble être corrigé dans les nouvelles versions.
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
#5
Le problème est identique sous CVS 1340407724 stripmoar.

Je ne comprend pas, ça viendrai de TCL ?
Comment je peu vérifier où ça set "::tcl::info::commands" c'est dans des pkgindex.tcl quelque part ?


Sujets apparemment similaires...
Sujet Auteur Réponses Affichages Dernier message
  [Script] Duck Hunt (version actuelle : 2.11) MenzAgitat 63 21,598 21/11/2020, 00:23
Dernier message: mkdir
  [Script] MediaDico (version actuelle : 3.126) MenzAgitat 31 27,136 14/10/2020, 13:26
Dernier message: Imhotep
  [Script] Reanimator (version actuelle : 1.2) MenzAgitat 31 16,544 10/10/2020, 16:07
Dernier message: mcdeffice
  [Script] Topic Warden (version actuelle : 1.54) MenzAgitat 23 17,220 10/10/2020, 15:51
Dernier message: mcdeffice
  [Script] Automatic Translator (version actuelle : 1.1) MenzAgitat 11 7,310 18/09/2020, 15:21
Dernier message: MenzAgitat
  Nick Change Responder (version actuelle : 2.31) MenzAgitat 46 27,625 18/08/2020, 16:47
Dernier message: CrazyCat
  Motus (version actuelle : 3.357) MenzAgitat 477 38,599 19/05/2020, 22:48
Dernier message: pheeric
  [Script] Interface MegaHAL (version actuelle : 4.1.0) MenzAgitat 113 79,919 03/05/2020, 22:00
Dernier message: ShowDowN
  [Script] Anti-Frenzy (version actuelle : 2.02) MenzAgitat 9 8,454 22/04/2020, 13:51
Dernier message: MenzAgitat
  [Script] DicoReverso (version actuelle : 1.03) MenzAgitat 3 6,808 18/04/2020, 02:20
Dernier message: MenzAgitat

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)