La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Débogage ASP.NET (niveau 300). Présentation de loutillage standard dASP.NET 2.0 et de Visual Studio Team System Health Monitoring Profiling Tests de charge.

Présentations similaires


Présentation au sujet: "Débogage ASP.NET (niveau 300). Présentation de loutillage standard dASP.NET 2.0 et de Visual Studio Team System Health Monitoring Profiling Tests de charge."— Transcription de la présentation:

1 Débogage ASP.NET (niveau 300)

2 Présentation de loutillage standard dASP.NET 2.0 et de Visual Studio Team System Health Monitoring Profiling Tests de charge Gestion des anomalies dans TFS Pause Débogage dapplications ASP.NET en production Préambule Outils pour la capture et lanalyse Présentation de WinDbg et SOS IIS et CLR Commande SOS Exemple de problématiques

3 Débogage ASP.NET (niveau 300) Présentation de loutillage standard dASP.NET 2.0 et de Visual Studio Team System Daniel TIZON Resp. du pôle Génie Logiciel /Team System - Winwise -

4 Introduction Avec les outils inclus dans ASP.NET et Team System… Vous disposez doutils utiles pour éviter de traiter les problèmes en production Ils sont à votre disposition mais souvent méconnus des développeurs

5 Agenda Health Monitoring Profiling Tests de charge Gestion des anomalies dans TFS

6 DASP.NET 2.0 « Comment surveiller les signes vitaux des applications en production » Health Monitoring

7 Un mécanisme standard dASP.NET2.0 Gère les événements importants dans la vie de lapplication Lapplication démarre ou sarrête Compilations Etat du processus Evénements derreur Erreurs de requêtes : exception non gérées, etc… Erreurs de configuration : compilation, parser,… Extensible

8 Health Monitoring : Hiérarchie des types dévénements WebBaseEvent WebManagementEvent WebApplicationLifetimeEventWebRequestEvent WebBaseErrorEvent WebErrorEvent WebRequestErrorEvent WebAuditEvent WebFailureAuditEvent WebSuccessAuditEvent

9 Health Monitoring : WebBaseEvent Contient des informations communes Des types plus spécialisés Pile des appels, adresse du client, informations de thread/process, information de requête public class WebBaseEvent { // properties public DateTime EventTime; public string Message; public object EventSource; public long EventSequence; public int EventCode; public int EventDetailCode; // methods static public void Raise(WebBaseEvent eventRaised); }

10 Health Monitoring : Configuration Dans le Web.config du serveur Dans le Web.config de lapplication Section événements gérés destinataires enregistrés mappage événements/destinataires paramètres des événements paramètres des destinataires

11 Health Monitoring : Destinataires dévénements Sappuie sur le modèles de providers Providers disponibles EventLogWebEventProvider BufferedWebEventProvider MailWebEventProvider Simpl WebEventProvider SqlWebEventProvider TemplatedMailWebEventProvder TraceWebEventProvider WMIWebEventProvider Extensible

12 Health Monitoring : Filtrage des événements Filtrage par hiérarchie de type Exemple : capturer toutes les erreurs ou uniquement les erreurs de configuration Les types peuvent être mappés à plusieurs fournisseurs Exemple : Toutes les erreurs Event Log Erreurs de configuration

13 Health Monitoring : Contraintes sur les événements Par palier Ex: 1 par minute Par seuils Minima/Maxima Ex : seulement 10 premières occurrences Ex : seulement à partir de la 10 ième occurrence

14 Health Monitoring Demo

15 Dans Visual Studio 2005 for Team Developers « Identification des portions de codes à optimiser (mémore/perf) » Le Profiling

16 Intégré à Visual Studio 2005 for Team Developers Rassemble les informations sur les temps dexécution et performances Méthodes qui prennent le plus de temps Consomment le plus de mémoire Les plus appelées Deux méthodes de mesure Sampling : ponctionne des informations à intervalles réguliers sur ce qui est exécuté Instrumentation : enregistre tous les appels

17 Le Profiling Code managé v2.0 Tout type de cible Exécutables Bibliothèques de classes Applications Web ASP.NET Services Windows VS na pas besoin dêtre lancé Permet de rapidement maximiser les gains de performance Profiling sur les tests Unitaires également

18 Profiling : Sampling ou Instrumentation Le Sampling a moins dimpact sur lexécution Analyse de la pile Non intrusive Des méthodes peuvent être manquées Linstrumentation insère du code entre les méthodes Résultats précis Coûteux sur lexécution

19 main AMethod BMethod Analyse sans modification de lapplication main 3 AMethod 6 BMethod 9 2 Profiling : Sampling

20 main AMethod BMethod main 001 AMethod0023 BMethod0098 Profiling : Intrumentation Injection de code

21 Profiling : depuis Visual Studio 2005 Via le menu Tools/Performances Tools Performance Wizard Choix de lapplication à profiler: Projet de la soluton courante Exécutable (.exe), Librairie (.dll), Application ASP.NET. Choix de la méthode: Sampling, Instrumentation Performance Explorer Configuration, exécution Analyse et stockage des résultats Résumé Fonctions et Appelant/Appelés Pile des appels Exportation XML

22 Profiling : à la ligne de commande En mode instrumentation VSPerfCLREnv /traceon VSInstr VSPerfCmd /start:trace /output:.VSP Exécuter lapplication VSPerfCmd /shutdown En mode Sampling VSPerfCLREnv /sampleon VSPerfCmd /start:sample / output:.VSP VSPerfCmd /launch: /args: Intéragir avec lapplication et sortir VSPerfCmd /shutdown En sattachant à un processus en mode Sampling VSPerfCLREnv /sampleon Démarrer lapplication VSPerfCmd /start:sample / output:.VSP VSPerfCmd /attach: Intéragir avec lapplication et sortir VSPerfCmd /detach: VSPerfCmd /shutdown

23 Profiling Demo

24 Dans Visual Studio 2005 for Team Testers « un moyen de détecter des problèmes habituellement remontés quen production » Les Tests de charge

25 Tests de Charge Intégré à Visual Studio 2005 for Team Testers Charge constante ou progressive Applications Web ou tests unitaires Récolte des données sur les performances De lapplication Des serveurs concernés Génère des rapports Possibilité dajouter un contrôleur et agents externes

26 Tests de Charge : Types de charge supportés Charge fixe Nombre fixe dutilisateurs, Permet de vérifier que lapplication tient Charge progressive Le nombre dutilisateurs varie, À partir dune valeur minimale, Par paliers, Jusquà une valeur limite Permet de déterminer les limites de lapplication

27 Tests de Charge : Sur des Tests Web Créer des test web Enregistrer le scénario de navigation dans IE Scripter/modifier lenregistrement Possibilités de databinding Définir la répartition selon les types de navigateurs Le(s) type(s) de connexion utilisé(s) Les tests sélectionnés (scénarios différents) Exemple: 10% de Firefox, 5% de smartphone, 85% IE6.0 90% ADSL, 10% de modem 56k… 90% daffichage de la page daccueil, 10% création commande

28 Tests de Charge : Procédure pas à pas Créer un projet de type Tests Créer des tests Web et/ou Unitaires Créer un test « Load Test » Sélectionner les tests Web/Unitaires Distribution des % dexécution de chacun Choisir le type de charge Sélectionner les compteurs de performance

29 Tests de Charge : Agents de test VS2005 Team Edition for Software Testers Load Agent Produit séparé de Team Suite Permet de simuler plus de charge Env 1000 par processeur Composé de : Team Test Load Agent : simule les tests Team Test Load Controller : pilote les agents

30 Tests de Charge Demo

31 avec Team Foundation Server (TFS) « Remontée des anomalies depuis des applications Web en production aux équipes de développement dans TFS » Gestion des anomalies

32 Team Foundation Server : Une extension de VS Chef de Projet Architecte Application Développeur Testeur Architecte Infrastructure Team Foundation Server Utilisateurs & Management Navigateur Web Team Explorer Microsoft Project Microsoft Excel Team Edition for Testers Team Edition for Developers Team Edition for Architects Work Items Serveur Build Contrôleur de Versions Portail Projet Etats & Analyses

33 Team Foundation Server : Architecture Architecture multi-couche Couche données SQL Server 2005 Couche applicative WebServices Windows Sharepoint Services Reporting Services Couche cliente Visual Studio 2005 MS Office : Excel / Project Internet Explorer (via WSS) Team Explorer …

34 Team Foundation Server : Architecture logique Team Foundation couche données SQL Reporting services WI (Product Studio) WSS (portail projet) SCC Méthodologies Données de compilation Warehouse Team Foundation services de données Team Foundation services dintégration Gestion des Work Items Gestion de sources Services de compilation Evénements et notifications Service de liaison Service denregistrement Rapports Web Parts Packages Office Plug-in Excel Plug-in MS Project Lignes de commande IE Modèle objet de Team Foundation (API managée) MSSQL/TCP SOAP/HTTP(S) Visual Studio

35 Les Work Items : De quoi sagit-il ? Un concept générique pour Créer de linformation La faire évoluer La partager La suivre Basés sur des modèles Données, comportement Définis au niveau Team Project Extensibles

36 Les Work Items : Concrètement Un Work Item possède : Un type: Bogue, Tâche, Demande dévolution,… Des états: Actif, Résolu, Fermé,… Motif de passage dun Etat à lautre Nouveau, Fixé, Obsolète, Non reproduit Des champs: Titre, Description, Date, Assigné à, Area, Itération,… Un historique Des pièces jointes Peuvent être liés à Du code, un test, résultat dune compilation, un autre Work Item, Un fichier, un lien hypertexte

37 Modèle Objet : Team Foundation Server C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies

38 Modèle Objet : Work Items

39 Gestion des anomalies dans Team Foundation Server Demo

40 Ressources De manière générale Les starters kits : bid=62 bid=62 Télécharger Visual Web Developer 2005 Express Edition : wd/default.mspx wd/default.mspx Le centre de développement ASP.NET sur MSDN : px px

41 Ressources A propos de lhealth monitoring ASP.NET Health Monitoring : gb/library/ms aspxhttp://msdn2.microsoft.com/en- gb/library/ms aspx Vue d'ensemble du contrôle d'état ASP.NET : Procédure pas à pas : écoute des événements WMI lors du contrôle d'état ASP.NET : fr/library/ms aspxhttp://msdn2.microsoft.com/fr- fr/library/ms aspx A propos du Profiling Visual Studio Team System 2005 Performance Tool FAQ : 81&SiteID=1 81&SiteID=1 A propos des Tests de Charge Test de charge avec Team System : quoi, quand, comment ? : px px


Télécharger ppt "Débogage ASP.NET (niveau 300). Présentation de loutillage standard dASP.NET 2.0 et de Visual Studio Team System Health Monitoring Profiling Tests de charge."

Présentations similaires


Annonces Google