Afin de compléter votre panoplie d’outils pour analyser votre application, je vais vous expliquer le fonctionnement du module des dépendances. Les dépendances sont tous les composants externes à votre application que cette dernière va appeler. Il s’agit surtout des appels HTTP, des appels à une base de données SQL ou au système de fichiers.

Application Insight

Actuellement, Application Insights gère “ out of the box ” les dépendances suivantes :

  • ASP.NET
    • Bases de données SQL
    • Services web et WCF d’ASP.NET qui utilisent des liaisons HTTP
    • Appels HTTP locaux ou distants
    • Azure DocumentDb, table, stockage d’objets blob et file d’attente
  • Java
    • Appels effectués vers une base de données par le biais d’un pilote JDBC, comme MySQL, SQL Server, PostgreSQL ou SQLite.
  • JavaScript dans les pages web : le SDK de page web enregistre automatiquement les appels Ajax en tant que dépendances.

Il est également possible d’écrire vos propres appels au SDK pour des dépendances qui ne seraient pas couvertes, ceci grâce à l’API TrackDependency.

Installation

Si vous avez une application s’exécutant avec .NET 4.6 ou plus, vous n’avez rien à faire. Sinon il vous faudra installer Application Insights Status Monitor sur votre serveur IIS (voir la documentation ici pour la marche à suivre).

Utilisation

Le graphique de visualisation des performances des dépendances se trouve dans l’onglet Performance (logique non ? ). On y accède par le menu Outils > Performances ou directement en cliquant sur le graphique des Réponses Serveur (voir image ci-dessous).

Visualisation des performances

En dessous de la liste des requêtes serveur, se trouve la liste des moyennes d’exécution des appels aux dépendances.

moyennes d’exécution des appels aux dépendances

Dans mon exemple – je n’ai que des requêtes SQL – on retrouve l’adresse du serveur SQL (ici floutée), ainsi que le nom de la requête.

En cliquant sur une des lignes, on accède à l’onglet de recherche, filtré sur cette dépendance. On peut alors visualiser le nombre d’appel et leur durée, mais aussi la liste exacte des appels.

recherche filtrée sur la dépendance

Depuis la liste des appels, vous pouvez accéder au détail de celui-ci.

détail commande

Dans cet onglet, vous retrouverez les propriétés principales de la dépendance (date, type, résultat, durée) et la commande appelée, ici une procédure stockée. Les petits points permettent d’accéder à toutes les propriétés. Vous aurez des informations plus précises sur l’appareil qui a effectué l’appel, l’IP, la version de l’application, etc.

Conclusion

En ayant les traces des appels à vos dépendances, vous allez être capable de trouver rapidement les requêtes SQL qui seraient trop lentes, détecter quels appels provoquent des erreurs dans votre application. Avec tout cela pour vous aider plus rien ne vous empêche de créer des applications toujours meilleures, toujours plus performantes.

Ne ratez plus aucunes actualités avec la newsletter mensuelle de SoftFluent