Konsum "Event Tracing for Windows" - Veranstaltungen
Antwort auf diese Frage hat mich dazu geführt, zu schauen, mit "Event Tracing for Windows" für unsere tracing-Anforderungen. Ich bin gekommen, über NTrace, das scheint eine gute Möglichkeit zur Herstellung von ETW-Ereignissen aus C# - code (mit dem XP-kompatibel "klassischen Anbieter" - Modell).
Aber ich bin nicht in der Lage zu finden, eine einfache Möglichkeit zu verbrauchen diese Ereignisse - sehen Sie in Echtzeit und/oder melden Sie Sie in einer Datei. Der einzige Weg den ich gefunden habe, ist das beschrieben, in der NTrace-Dokumentation: ein tool ist nur verfügbar, als Teil des Windows DDK.
Im Falle eines komplexen Problems in das Feld, müssen wir die Fragen, die Benutzer zu produzieren, eine Datei mit einer Spur. Wir können nicht bitten Sie die Benutzer zum herunterladen des DDK oder die Durchführung einer Reihe von komplexen Operationen, um dies zu tun.
Gibt es eine einfache, Benutzer-freundliche Weise zu melden ETW-Ereignisse in eine Datei?
Außerdem ist es möglich, dass jemand zu verbrauchen ETW-Ereignisse auf Windows Vista/7 wenn Sie nicht als administrator ausgeführt?
InformationsquelleAutor user200783 | 2010-03-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
TraceView ist die einfachste out-of-the-box-Lösung, aber es ist möglich, schreiben Sie Ihre eigene ETW-viewer, der speziell zu Ihrem provider. Dies würde Ihnen volle Kontrolle über die Präsentation und machen es viel einfacher für den Endbenutzer als TraceView ist wirklich mehr ein debugging-tool als etwas, das man Fragen kann Ende-Benutzer ausgeführt werden.
So weit als real-time-tracing geht, laut der Dokumentation:
Wenn Sie interessiert sind, schreiben Sie Ihre eigene ETW-viewer (real-time-oder log-Datei), hier ist die entsprechende Dokumentation.
Es scheint, dass eingeschränkte Benutzer können nicht kontrollieren, die Protokollierung von Ereignissen in eine Datei. Um dies zu tun, müsste ein Benutzer verwenden eine trace-controller, aber msdn.microsoft.com/en-us/library/aa364117%28VS.85%29.aspx sagt: "Nur Benutzer mit administrativen Privilegien ... Steuern kann ereignisablaufverfolgungs-Sitzungen".
Ja, Vista ist eine Art ziehen. Um dies zu umgehen hätte man alle event-tracing-Sachen, die in einem Dienst läuft unter einem privilegierten Konto. Wahrscheinlich einfacher, nur um den Benutzer zu erheben, obwohl.
Update: .NET Framework 4.5 eingeführt, der EventSource-Klasse, dass vereinfacht das erstellen von events für die event tracing für Windows (ETW).
InformationsquelleAutor Luke
Windows-Ereignisprotokoll liest die ETW. In der Tat, ich würde sagen, das ist der richtige Weg für einen Verbraucher (nicht Programm), das anzeigen und exportieren der ETW-Spuren.
Siehe hier für ein Beispiel. http://blogs.microsoft.co.il/blogs/applisec/archive/2009/10/12/reading-etw-tracing-using-event-viewer.aspx
Diese Frage auf der msdn-Website Diskus, was zu tun ist, wenn die Protokolle nicht angezeigt werden. Tut etwas, das hier helfen?
Vielen Dank für die zusätzlichen Informationen. Alles, was ich gelesen habe, sagt, dass die Ereignisanzeige nicht in der Tat display-ETW-Spuren - der einzige Weg, um zu sehen, eine Spur in Echtzeit-ist die Verwendung der DDK ist TraceView-tool. Dennoch, diese Frage wurde hauptsächlich über die Einrichtung der Protokollierung von trace in eine Datei, und ich fand mehrere alternative Möglichkeiten, das zu tun. Dazu gehören die "logman" command-line tool und die "Zuverlässigkeits-und Leistungsüberwachung". Leider, alle diese Methoden scheinen zu erfordern administrator-Zugriff - ich bin immer noch daran interessiert, zu sehen, ob es einen Weg gibt, dies zu tun als ein standard-Benutzer.
InformationsquelleAutor Preet Sangha
ETW-Ablaufverfolgung wurde konzipiert, um nur von den Administratoren, weil trace enthalten möglicherweise personenbezogene Daten. Und es würde die Sicherheit darstellen bedrohlich, wenn ein nicht-admin kann capture die Spur.
Ist hier ein mahnendes Beispiel aus xperf
Die Spur, die Sie gerade aufgenommen haben "C:\Windows\system32\kernel.etl" kann enthalten
persönlich identifizierbare Informationen, einschließlich, aber nicht beschränkt auf Pfade, die auf Dateien zugegriffen, Pfade, registry zugegriffen und Prozess-Namen. Genaue Informationen hängt davon ab, die Ereignisse, die protokolliert wurden. Bitte berücksichtigen Sie dies bei der Verteilung dieser Spuren mit anderen Menschen.
Hoffe, das beantwortet deine Frage,
InformationsquelleAutor
Hier ist, wie kann man benutzerdefinierte ETW Spuren aus Ihrer eigenen benutzerdefinierte Anbieter und wie ETW kann verwendet werden innerhalb von managed code
Hoffe, das hilft.
InformationsquelleAutor
IMO Perfview ist eines der besten Werkzeuge zur Steuerung und Ansicht ETW Spuren. Es kann auch bieten verwaltete Aufruflisten. Der beste Teil ist, könnten Sie xcopy auf jedem server und sammeln Spuren.
Perfview verwendet TraceEvent-Bibliothek und hier die Proben, wie Sie es nutzen können, über eine API und C#
InformationsquelleAutor Ghita