* Parse out and expose the Provider name for TraceLogging-generated generic events in LTTng, enabling a much simpler view that better matches the view for generic events in ETW and Perfetto.
* Enable per-trace string interning to save some memory
* Bump versions of LTTngCds and LTTngDataExtensions
* For LTTNG's generic event table, default to not showing the Provider column
Co-authored-by: James Dooley <jdooley@ntdev.microsoft.com>
* Build tables to test & get code coverage for table generation used by UI. Get all data to test for issues seen with projectors vs certain data. Increases Perfetto CC from 32% to 83%
* Fix LTTng tables not implementing IsDataAvailable(). Increase LTTng code coverage from 56% -> 61% by covering table & data projectors
* Fix crash/regression when StreamDefinedEventContext is not available (null)
* Fix exception leading to trace not being parsed. In newer LTTng v2.13 traces with syscall events _clone_flags by itself is deprecated and _flags is now a 2 enum struct (exit signal & clone options). https://lttng.org/docs/v2.13/#doc-whats-new
* Changes for 1.2 release which can now include Perfetto support. Also compatible with public Store Windows Performance Analyzer Preview which supports 1.0 RC SDK. Rev version to 1.2 and standardize package version, AssemblyVersion, and FileVersion into just 1 version.
* First check-in of initial CPU sampling verifying we get some basic data with sample & proc/thread.
* Upgrade all NuGet deps including Performance.SDK to 0.109.24 (fix breaking changes). Add trace processor shell logging to Perfetto UT
* Walk the stack and produce StackWalk Module!Function array as well as Instruction Pointer (IP) Module & Function
* Add some Unit Tests for CPU Sampling and a small Android 12 trace with CPU Sampling
Added 3 new tables to the Perfetto plugin.
Logcat events - Displays all the logcat messages logged during the trace in simple linear timeline. Moved this table to a separate "Android" table group.
CPU frequency scaling - Displays the frequency chart for each CPU and how it changes. When the CPU goes idle, the CPU frequency is displayed as 0.
Ftrace events - Displays all the remaining events in the Raw table, which is a lot of the Ftrace events. These are displayed in simple timeline grouped by CPU
Also moved a couple tools that were used by multiple projects to a shared Utility project.
Fix LTTng casing. This should also likely resolve issue with WPA not being able to load extension (likely due to mixed casing in LTTngDataExtensions.deps.json)