GeneratorLog 0.0.7-alpha

This is a prerelease version of GeneratorLog.
dotnet tool install --global GeneratorLog --version 0.0.7-alpha
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local GeneratorLog --version 0.0.7-alpha
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=GeneratorLog&version=0.0.7-alpha&prerelease
                    
nuke :add-package GeneratorLog --version 0.0.7-alpha
                    

GeneratorLog

Tools for recording and analyzing Roslyn source generator events.

Tools

generatorlog — Trace Recorder

Record source generator events from the Microsoft-CodeAnalysis-General provider to a trace file.

Wrap a build command (recommended, any platform):

dnx generatorlog@0.0.7-alpha -- dotnet build

Windows (system-wide via ETW, no PID needed):

dnx generatorlog@0.0.7-alpha

Attach to a running process (any platform):

dnx generatorlog@0.0.7-alpha --pid <pid>

Options: | Option | Description | |---|---| | -- <command> | Launch a command and trace it via EventPipe. Works on all platforms. | | --output, -o <path> | Output file path. Defaults to generators.etl (ETW) or generators.nettrace (EventPipe). | | --pid, -p <pid> | Attach to a running process via EventPipe. | | --verbose, -v | Show detailed diagnostic output (file operations, ETW/EventPipe setup, etc). |

Notes:

  • -- <command> mode automatically handles MSBuild's multi-process architecture: disables node reuse and compiler server, collects trace files from all child processes, and produces a single output file.
  • If multiple processes emit generator events (multi-project builds), they are bundled into a .nettrace.zip archive.
  • Default output filenames use collision avoidance: generators.etl, generators (1).etl, etc.

generatorlog-analyze — Trace Analyzer

Analyze trace files containing Roslyn source generator events and display statistics.

dnx generatorlog.analyze@0.0.7-alpha [options] <file.etl|file.nettrace|file.zip> [...]

Options: | Option | Description | |---|---| | --csv, -c <path> | Export results as CSV. | | --verbose, -v | Show detailed diagnostic output. |

Supported formats: .etl (ETW), .etlx, .nettrace (EventPipe), .nettrace.zip (bundled traces), .etl.zip (compressed ETL — streamed from zip without full extraction into memory).

Output includes:

  • Summary: total driver runs, generator executions, unique generators, process count
  • Per-process overview table
  • Per-generator statistics: execution count, min/avg/max timing, cumulative time, projects

Installation

One-shot via dnx (.NET 10+)

dnx generatorlog@0.0.7-alpha -- dotnet build
dnx generatorlog-analyze@0.0.7-alpha generators.nettrace

As global tools

dotnet tool install -g GeneratorLog --version 0.0.7-alpha
dotnet tool install -g GeneratorLog.Analyze --version 0.0.7-alpha

Customer guide

See docs/recording-guide.md for step-by-step instructions to give to customers.

License

MIT

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
0.0.7-alpha 90 4/9/2026
0.0.6-alpha 75 3/18/2026
0.0.5-alpha 64 3/18/2026
0.0.4-alpha 68 3/18/2026
0.0.2-alpha 64 3/18/2026
0.0.1-alpha 71 3/18/2026