2009-10-12 5 views
2

J'ai un fournisseur ETW écrit qui est utilisé par mon système pour enregistrer des blobs opaques de données binaires en utilisant la fonction API TraceEvent. Mon système est essentiellement un système de traitement d'événements à haut débit et je veux être en mesure de capturer (à moindre coût) l'état sérialisé de certains objets lorsqu'ils passent à travers le système. Cela me donnera une fonction de rejouabilité pour qu'à tout moment dans le futur je puisse rejouer une trace d'événement et reproduire la séquence exacte d'événements qui ont provoqué un état particulier dans l'application. Il est encore dans les premiers stades donc pour l'instant mon seul contrôle sur le traçage est en utilisant un des outils tels que logman ou tracelog, qui peut créer des contrôleurs de trace pour enregistrer les événements dans un fichier de trace avec un. Etl extension. Je sais que je pourrais écrire un contrôleur autonome qui pourrait consommer les événements en temps réel et écrire les événements à classer moi-même mais je veux essayer d'éviter cela à ce stade (appeler paresse :)), mais sérieusement pourquoi réécrire quelque chose qui est déjà disponible? Donc, est-ce que quelqu'un a un aperçu du format binaire des fichiers .etl? Je sais quelque chose comme tracedmp peut les lire et produire des fichiers CSV, mais cela n'aide pas avec la partie binaire. Si je pouvais lire ces fichiers et analyser les blobs que j'ai écrits, j'aurais essentiellement la rejouabilité que je suis après, mais je ne trouve rien sur ce format de fichier.Format de fichier de trace Windows ETL?

Merci, Paul

+0

Où puis-je trouver tracedmp? Ce n'est pas dans le dernier Microsoft SDK. – Rhubarb

Répondre

7

Eh bien, 15 minutes pour répondre à ma propre question. Doit être une sorte d'enregistrement mais je jure que j'ai passé une demi-journée à chercher ceci :) :)

Les fonctions OpenTrace/ProcessTrace/CloseTrace vous permettent de consommer des événements d'une session de suivi en temps réel ou d'un fichier journal ETL et semblent être exactement ce que je cherchais.

+0

+1 pour suivre votre propre question. –