-
Notifications
You must be signed in to change notification settings - Fork 715
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TraceParserGen? #336
Comments
The copy on the OneDrive is the latest. It has not changed in quite a while. The other is a fork but I don't know anything about it. Moving it to this repo is interesting if someone wants to make a PR for it. The one-drive thing predated the PerfView git repository. |
Alright, thanks. I have done so here: #344. |
TraceParseGen source lives in the PerfView GitHub. https://github.com/Microsoft/perfview/tree/master/src/TraceParserGen You can build it simply by doing 'msbuild' in the TraceParserGen directory. The binary ends up in bin\Debug\TraceParserGen.exe Simple cases are simple: TraceParserGen will generate a *.cs file that has the parser for that manifest. However there are many manifests that use unusual types or formats that will confuse the parser generator (but you can usually just skip out the bad code and use what is left, it just won't parse every event from the manifest). TraceParserGen /? will give you some useful help. In particular it will tell you the two most common ways of getting manifest that you feed to it. OS providers can be listed using 'logMan query Providers' and a manifest obtained by doing
EventSource manifests can be obtained from an ETL file containing EventSource data using
If the DLL containing the EventSource is available, TraceParserGen can use it directly with the /EventSource qualifier. Also see the TraceEvent Programmers Guide and in particular the Building TraceEventParsers section for more |
In the docs for TraceEvent, the TraceParserGen tool is referenced as a way to generate parsers for custom events. This seems useful, but I'm unable to find it in the repository. Is the tool (or its source) available somewhere?
I've found older copies here and on OneDrive, but I'm not sure what the state of these are.
Thanks!
The text was updated successfully, but these errors were encountered: