IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Delphi Discussion :

Connaître la pile d'appels lors d'une exception


Sujet :

Langage Delphi

  1. #1
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Points : 238
    Points
    238
    Par défaut Connaître la pile d'appels lors d'une exception
    Bonjour,

    N'y a-t-il pas de moyen de connaître la pile d'exécution au moment où une erreur est levée ? Le but étant de la stocker dans un fichier de log pour pouvoir plus facilement localiser les bugs.

    Ou sinon, avez-vous des propositions performantes pour la localisation de bugs qui se produisent chez des clients ? Dur de trouver la méthode idéale

  2. #2
    Membre éclairé
    Avatar de nostroyo
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 168
    Points : 680
    Points
    680
    Billets dans le blog
    16
    Par défaut
    Vas faire un tour du coté d'EurekaLog ou madExcept.

    Ce sont des composants qui permettent aux clients de t'envoyer un mail avec entre autre la pile d'appel et d'autres info importante comme l'OS ou les droits de cette utilisateur.

  3. #3
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Points : 238
    Points
    238
    Par défaut
    Effectivement EurekaLog a l'air intéressant. Je vais essayer la démo. Il n'y a pas grand-chose sur ce software sur le forum, qqn a-t-il de l'expérience avec Eurekalog ?

  4. #4
    Membre éclairé
    Avatar de nostroyo
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 168
    Points : 680
    Points
    680
    Billets dans le blog
    16
    Par défaut
    Je l'utilise au boulot et une fois que tu y as gouté, tu ne peux plus t'en passer.

    Son utilisation est très simple, et tout ce configure à partir de l'EDI.

  5. #5
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Points : 238
    Points
    238
    Par défaut
    Bonjour,

    Je complète le sujet pour signaler qu'après un peu plus d'un mois d'essai nous avons acheté une licence EurekaLog pour notre entreprise car la version démo nous a déjà permis de gagner beaucoup de temps lors des séances de débuggage !

    Je suis surpris de ne pas lire plus d'articles aux sujets de ces composants.

    Merci encore teubies pour le tuyau.

    A+

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 149
    Points : 61
    Points
    61
    Par défaut
    Bonjour,

    Personnellement j'utilise Delphi7 et grâce à l'unité 'FastMM4' (le gestionnaire de mémoire par défaut depuis Delphi 2005 je crois) je peux récupérer la pile d'appels mais cela nécessite dans le projet d'inclure le cadre de pile et les infos de débogage dans l'onglet "Compilation", ou alors d'inclure les infos de débogage distant dans l'onglet "Lieur" (ce qui fait plus que doubler la taille des exes).


    Reste à 'surcharger' la méthode appelée lorsqu'une exception est levée, cela fonctionne très bien mais l'inconvénient est qu'il faut livrer des exécutables contenant des infos de débogage, ce qui en plus de le rendre volumineux présente un risque si une personne mal intentionnée et plutôt douée tente d'en tirer partie...

    Comment fonctionne EurekaLog ? Nécessite-t-il d'inclure toutes les infos de débogage dans l'exécutable ?



    Citation Envoyé par MiJack Voir le message
    Bonjour,

    Je complète le sujet pour signaler qu'après un peu plus d'un mois d'essai nous avons acheté une licence EurekaLog pour notre entreprise car la version démo nous a déjà permis de gagner beaucoup de temps lors des séances de débuggage !

    Je suis surpris de ne pas lire plus d'articles aux sujets de ces composants.

    Merci encore teubies pour le tuyau.

    A+

  7. #7
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Points : 238
    Points
    238
    Par défaut
    Désolé pour le retard dans la réponse, j'étais en vacances ces 2 dernières semaines.

    Alors pour ma part j'utilise également FastMM lors du développement pour les fuites mémoire. Il y a également une possibilité de détecter les fuites avec EurekaLog, mais je trouve FastMM plus pratique pour ces cas.

    Mais le gros avantage avec Eurekalog c'est qu'effectivement pas besoin d'inclure les infos de débuggage ! L'Exe est un peu plus volumineux, mais pas beaucoup (beaucoup moins qu'en incluant les infos pour FastMM par exemple).

    Pour l'instant nous sommes très satisfait de l'investissement. Je te conseille d'essayer la démo d'Eurekalog, vite installé et testé, et très facilement désactivable (une option dans le menu). C'est encore le mieux pour te faire une idée.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 149
    Points : 61
    Points
    61
    Par défaut
    Citation Envoyé par MiJack Voir le message
    Désolé pour le retard dans la réponse, j'étais en vacances ces 2 dernières semaines.

    Alors pour ma part j'utilise également FastMM lors du développement pour les fuites mémoire. Il y a également une possibilité de détecter les fuites avec EurekaLog, mais je trouve FastMM plus pratique pour ces cas.

    Mais le gros avantage avec Eurekalog c'est qu'effectivement pas besoin d'inclure les infos de débuggage ! L'Exe est un peu plus volumineux, mais pas beaucoup (beaucoup moins qu'en incluant les infos pour FastMM par exemple).

    Pour l'instant nous sommes très satisfait de l'investissement. Je te conseille d'essayer la démo d'Eurekalog, vite installé et testé, et très facilement désactivable (une option dans le menu). C'est encore le mieux pour te faire une idée.
    C'est vrai qu'Eurekalog (et/ou MadExcept) ont l'air bien sympa. Le seul truc qui m'embête c'est qu'à priori ils ne sont pas livrés avec les sources j'ai l'impression. C'est bien dommage, on ne peut pas personnaliser le système en fonction de ses besoins, mais nul doute que le soft soit vraiment bien fichu ce qui fait que cela n'est peut-être plus tellement un défaut. En tout cas je commence à me dire que mon investissement personnel à récupérer la pile d'appel n'était peut-être pas très rentable. J'ai malheureusement entendu parler de ces softs qu'après avoir fait ces implémentations.

  9. #9
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2003
    Messages : 422
    Points : 238
    Points
    238
    Par défaut
    Citation Envoyé par ZZZzzz2 Voir le message
    C'est vrai qu'Eurekalog (et/ou MadExcept) ont l'air bien sympa. Le seul truc qui m'embête c'est qu'à priori ils ne sont pas livrés avec les sources j'ai l'impression.
    Tu as mal vu, il y a une version avec les sources :

    "EurekaLog 6.0.21 Enterprise (with full source code)"

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 149
    Points : 61
    Points
    61
    Par défaut
    Citation Envoyé par MiJack Voir le message
    Tu as mal vu, il y a une version avec les sources :

    "EurekaLog 6.0.21 Enterprise (with full source code)"

    Toutes mes confuses alors...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Afficher la pile d'appel Tcl depuis une fonction C
    Par grismauve dans le forum Tcl/Tk
    Réponses: 0
    Dernier message: 19/09/2009, 10h22
  2. [debug] comment récupérer la pile d'appel lors d'un crash ?
    Par mamelouk dans le forum Autres éditeurs
    Réponses: 13
    Dernier message: 10/11/2006, 17h22
  3. Affichage de la pile d'appel lors d'une exception
    Par damien.yep dans le forum Langage
    Réponses: 1
    Dernier message: 14/09/2005, 16h42
  4. Réponses: 3
    Dernier message: 01/12/2004, 09h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo