BT

LINQ sur les Logs et les Traces

par Roopesh Shenoy , traduit par Antoine Diekmann le 28 janv. 2014 |

Microsoft Open Technologies a récemment annoncé la sortie de Tx, un projet open source qui permet de faciliter le débogage en utilisant des Logs et Traces pour mettre en place un système de surveillance et d’alertes temps réels.

Le système est composé de plusieurs fonctionnalités intéressantes :

  • l’utilisation de LINQ directement sur les source d’évènements (Event Sources)
  • l’utilisation de Reactive Extensions sur les sources d’événements avec un support des séquences d’événements multiplexées (il s’agit d’une séquence unique contenant différents types d’événements par ordre d’apparition)
  • la possibilité de fournir une requête unique sur plusieurs sources avec la même API en temps réel et dans l’historique
  • avec les fichiers d’historiques Log/Traces, plusieurs requêtes peuvent être effectuées en une seule lecture. Par exemple, compter tous les «Evénements d’avertissements» qui contiennent les mots « Begin » et « End » et calculer la durée moyenne de chaque activité.

Pour supporter ces fonctionnalités, Il est possible d’utiliser LINQPad pour l’analyse ponctuelle ou intégrer ce Framework directement dans vos applications .NET. Avec LINQPad, l’expérience est similaire à celle du requêtage d’une base de données.

Le projet propose 4 packages NuGet :

  • Tx.Core – Composants communs non spécifiques à un format de traçage particulier.
  • Tx.Windows – Support de traçage d’évènements Windows, journaux d’événements, compteurs de performances à partir de fichiers et d’une API de décompte en temps réel, IIS Text Logs au format W3C.
  • Tx.SqlServer – Support des événements SQL Server étendus.
  • Tx.All – Un package utilitaire comprenant tous les éléments précédents.

Notez que Microsoft nous conseille de ne pas utiliser Tx dans les cas suivants :

  • Lorsqu’il n’y a pas de flux temps réel et que les données sont uniquement en mémoire ou sur un fichier unique facile à analyser. Ici, il est préférable d’utiliser LINQ-to Objects au lieu de Tx.
  • Lorsqu’il y a des flux en temps réel mais que chaque flux ou fichier contient un seul type d’événement : dans ce cas privilégiez Reactive Extensions.

L’outil est utilisé en interne chez Microsoft par les équipes WCF et Service Bus et est désormais disponible pour tous les développeurs .NET. Pour commencer, nous vous invitions à jeter un œil à sa documentation.

Bonjour étranger!

Vous devez créer un compte InfoQ ou cliquez sur pour déposer des commentaires. Mais il y a bien d'autres avantages à s'enregistrer.

Tirez le meilleur d'InfoQ

Donnez-nous votre avis

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

M'envoyer un email pour toute réponse à l'un de mes messages dans ce sujet
Commentaires de la Communauté

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

M'envoyer un email pour toute réponse à l'un de mes messages dans ce sujet

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

M'envoyer un email pour toute réponse à l'un de mes messages dans ce sujet

Discuter

Contenu Éducatif

Rien ne serait possible sans le soutien et la confiance de nos Sponsors Fondateurs:

AppDynamics   CloudBees   Microsoft   Zenika
Feedback Général
Bugs
Publicité
Éditorial
InfoQ.com et tous les contenus sont copyright © 2006-2014 C4Media Inc. InfoQ.com est hébergé chez Contegix, le meilleur ISP avec lequel nous ayons travaillé.
Politique de confidentialité
BT