WindevExpert

Vidéo 25 • Qualité & Maintenance

Crash Reporting :
L'Hélicoptère de Secours

Comment transformer chaque bug client en une notification immédiate sur votre Dashboard, avant même que le client ne s'en plaigne.

Le Silence est votre Ennemi

Le Développeur "Réactif"

L'application plante. Le client s'énerve, il essaie de relancer, ça replante. Il finit par vous appeler 2 jours plus tard.

RÉSULTAT : Perte de confiance. Vous ne savez pas ce qui s'est passé.

L'Éditeur SaaS "Proactif"

L'application détecte l'erreur, fige l'état, envoie un rapport complet au Cloud et propose au client de redémarrer.

RÉSULTAT : Vous avez le bug et la solution avant l'appel du client.

Atelier : Déclenchement d'un Incident

gestion_ventes.exe

Simulation : Division par zéro / Index corrompu

Master Admin - Alerting
// En attente de signaux...

Le Contenu de la "Boîte Noire"

Quoi envoyer au Cloud ?

  • Stack Trace : La ligne exacte et la procédure qui a planté.

  • Context Machine : OS, Version de l'app, RAM libre, IDTenant.

  • Screen Grab : (Optionnel) Une capture d'écran de l'erreur pour le visuel.

// report_crash_7F4D.json
{
"error_code": 1024,
"procedure": "CalculTVA",
"line": 82,
"message": "Division par zéro",
"app_ver": "2.4.1",
"os": "Windows 11 Pro"
}

Le Code : Protection Globale

// 1. Capturer toutes les erreurs de l'application
QUAND EXCEPTION DANS
    ExécuteActionPrincipale()
FAIRE
    // 2. Extraire l'ADN de l'erreur
    stReport est une ST_CrashReport
    stReport.Message = ExceptionInfo(errMessage)
    stReport.Ligne = ExceptionInfo(errLigne)
    
    // 3. Pousser vers l'API Cloud (en tâche de fond)
    pclMaSync.SendCrash(stReport)
    
    // 4. Informer proprement l'utilisateur
    Erreur("Oups ! Nous avons noté le problème et nos ingénieurs sont alertés.")
FIN