Partager via


Suivi COM+

Le service de suivi COM+ vous permet de créer vos propres programmes d’administration et de diagnostic qui suivent les status et les performances de l’exécution d’applications COM+. Le suivi COM+ fournit des informations statistiques sur l’utilisation des applications COM+ ainsi que des informations status, telles que si une application serveur COM+ instance est suspendue ou a été recyclée. Les outils peuvent utiliser les informations de suivi dans la surveillance des diagnostics ou à des fins d’affichage. Par exemple, l’outil d’administration Component Services utilise le suivi COM+ pour afficher les status des instances d’application COM+ dans les dossiers Applications COM+ et Processus en cours d’exécution.

Le suivi COM+ calcule et met régulièrement à jour un ensemble de métriques couramment utilisées, rendant ces informations accessibles aux programmes qui en ont besoin. Il est similaire à l’instrumentation COM+ dans la mesure où les deux services collectent automatiquement des données à partir d’instances d’application COM+ et mettent ces données à la disposition des consommateurs. Toutefois, il existe des différences importantes entre ces services, tant dans les fonctionnalités fournies que dans l’utilisation classique. Le tableau suivant récapitule ces différences.

COM+ Instrumentation Suivi COM+
Données affinées. Le service d’instrumentation COM+ avertit les abonnés inscrits des événements discrets individuels (par exemple, méthode appelée, objet détruit) qui se produisent dans une application COM+ instance.
Données agrégées. Le suivi COM+ calcule et met à jour régulièrement les métriques couramment utilisées pour la status et les performances des instances d’application COM+.
Les abonnés aux événements calculent généralement les métriques par eux-mêmes, à l’aide d’algorithmes et de stratégies ad hoc.
Les métriques sont calculées automatiquement par le service de suivi COM+. Tous les consommateurs obtiennent les mêmes données, sans prise en charge des métriques personnalisées.
Après avoir inscrit un abonnement, le consommateur ne reçoit aucune information sur une application COM+ instance jusqu’à ce qu’un événement se produise.
Les données de suivi de toutes les instances d’application COM+ peuvent être récupérées à tout moment.
Prend en charge uniquement un mécanisme d’abonnement basé sur les événements COM+ pour les consommateurs.
Prend en charge à la fois un mécanisme d’abonnement basé sur les événements COM+ et l’interrogation sur une interface de serveur local COM.
Exemples
Notifications lorsqu’une méthode est appelée ou retournée.
Temps de réponse d’appel moyen, nombre d’appels de méthode qui ont réussi ou échoué dans une période récente, nombre d’objets actuellement dans un appel de méthode.
Notifications lorsqu’un objet est ajouté au pool d’objets ou obtenu à partir de celui-ci.
Nombre d’objets dans le pool, nombre total d’objets.
Notifications lorsqu’une application serveur COM+ est démarrée, suspendue ou recyclée.
État du processus d’application serveur COM+ (par exemple, s’il est suspendu ou recyclé).
Notifications des événements de démarrage, de préparation, d’abandon et de validation de transaction.
Aucun équivalent.
Notifications de tentatives d’authentification au niveau de l’appel de méthode réussies et ayant échoué.
Aucun équivalent.

Bien que le suivi COM+ soit plus limité en termes d’étendue des données et de flexibilité pour le calcul des métriques, les métriques qu’il fournit doivent être suffisantes pour un large éventail de programmes d’administration et de diagnostic. L’utilisation du suivi COM+, dans la mesure du possible, peut simplifier la conception de ces programmes. En outre, l’utilisation du suivi COM+ dans les systèmes de production peut avoir un impact beaucoup plus faible sur les performances, ce qui le rend plus approprié pour les outils de supervision en temps réel.

Comment le suivi COM+ collecte les données

Lorsqu’un processus d’application serveur COM+ est démarré, COM+ inscrit le processus auprès du serveur de suivi, un composant de l’application système. Les composants des applications et des services de bibliothèque COM+ sans composants (SWC) prennent également en charge le suivi. Lorsqu’un composant de bibliothèque ou un contexte SWC est créé dans un processus, COM+ inscrit le processus auprès du serveur de suivi s’il n’a pas déjà été inscrit.

COM+ met à jour les statistiques d’un processus suivi lorsque certains événements se produisent dans le processus, tels que la création d’un objet ou l’achèvement d’un appel de méthode. Les données mises à jour sont régulièrement envoyées au serveur de suivi, à ce moment-là, elles sont mises à la disposition des consommateurs. Le serveur de suivi est également responsable du calcul de certaines des métriques utilisées par les fonctionnalités de surveillance du recyclage et du blocage des applications COM+. Ces données sont également disponibles pour les consommateurs.

Les données de suivi sont organisées en fonction du processus qui a généré les données. Les données au niveau des applications ou composants COM+ individuels du processus sont également disponibles pour les consommateurs qui ont besoin de ces informations.

Événements et interrogation

Le suivi COM+ prend en charge deux mécanismes permettant à un consommateur d’obtenir des données de suivi auprès du serveur de suivi, un mécanisme d’abonnement basé sur les événements COM+ et une interface de serveur local COM.

Les programmes qui doivent être avertis régulièrement avec des données de suivi mises à jour peuvent inscrire un abonnement pour l’interface d’événement IComTrackingInfoEvents . Environ toutes les trois secondes, le serveur de suivi appelle la méthode IComTrackingInfoEvents::OnNewTrackingInfo de chaque abonné, en envoyant les données de suivi les plus récentes sous la forme d’un objet de collection. Cet objet implémente l’interface IComTrackingInfoCollection , et les abonnés peuvent parcourir cette collection pour trouver les données qui les intéressent.

Pour diverses raisons, il peut être plus judicieux pour un programme d’interroger le serveur de suivi à la recherche de données. Par exemple, un outil de supervision peut avoir besoin de mises à jour beaucoup moins fréquemment qu’un programme qui affiche status dans une interface utilisateur. En outre, un programme ne peut utiliser qu’une petite partie des données de suivi disponibles pour le système (par exemple, un outil ne peut surveiller que les performances des instances d’une seule application COM+). Le modèle d’abonnement envoie à chaque abonné les données de suivi de toutes les applications COM+ dans chaque notification, et il incombe à l’abonné de trouver les données souhaitées. Enfin, les événements COM+ sont un mécanisme de notification d’événement au meilleur effort. Les services de remise de messages fiables ne sont pas fournis et il n’existe aucun moyen pour un abonné de détecter que le serveur de suivi n’a pas pu lui envoyer une notification.

Un programme qui a besoin d’un contrôle accru sur sa récupération des données de suivi peut utiliser l’interface IGetAppTrackerData du serveur de suivi.