問題タブ [etw-eventsource]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - logman セッションで欠落している EventSource トレースを修正する方法
これに加えて、このコードを Visual Studio コンソール アプリにインポートするだけでした。
トレース セッションを起動するために、次の両方を試しました。
試してみ
ましたlogman create trace sess -pf guids.txt -bs 1000 -nb 100 256 -ow -o tracefiles
(guids.txtにはこれだけのGUIDがあります)
ETL が吐き出されたら、WPA/netsh trace convert と Message Analyzer を使用してそれらを開こうとしました。これらのイベントはどれも示していません。
ここで何が問題になっていますか?
結果が表示されることを期待していますが、表示されるのは次のとおりです。
.net - Perfview がプロバイダー名、イベント名、およびメッセージを表示しないのはなぜですか?
アプリケーションの etw ログ ファイルをいくつか生成しています。Perfview を使用して .etl ファイルを読み取ります。Perfview は、以下のスクリーンショットのようなイベントを表示することがあります。適切なプロバイダー名/イベント名とメッセージが表示されません。代わりに、GUID を確認できます。これがどのシナリオで発生するかを知ることはできません。これはすべての .etl ファイルで発生するわけではないため、イベント ソースを疑うことはできません。
複数の etl 分割ファイルを生成するために、以下の MultiFileMB 構成で同じセッションを使用して生成された ETL ファイル。一部の分割ファイルは適切なデータを表示していますが、一部は下の画像に示されているとおりではありません。
破損したイベントと破損していないイベントを Perfview からダンプしてみました。適切なイベントには<PrettyPrint>
情報がありますTemplateType
がDynamicTraceEventData
、破損したイベントでは<PrettyPrint>
情報が得られません。また、TemplateType
ですUnhandledTraceEvent
。
c# - Powershell は C# System.Diagnostics.Tracing.EventSource を実装します
私が無知なだけかもしれませんが、C# には System.Diagnostics.Tracing.EventSource を使用した優れた機能がいくつかあり、新しいイベント ソースを非常に簡単に作成できます。これらのログを取り込み後に処理できるようにする、この便利な API を中心にいくつかの機能を構築しました。
ただし、これはすべてpowershellに移行されており、機能させようとしています。dll を介して EventSource サブクラスの現在の実装を使用すると、すべてが期待どおりに機能します。PowerShell だけで新しい EventSource サブクラスを作成しようとすると、イベントが表示されなくなります。
私はグーグルを徹底的に調査しましたが、これが標準的なアプローチではないことが明らかになりました. (コーディングのとても便利なチャンクなので驚くべきことです)誰かが私が間違っているかもしれないことを助けたり教えたりできますか?