Norr.PerformanceMonitor.Attribution
1.0.1
See the version list below for details.
dotnet add package Norr.PerformanceMonitor.Attribution --version 1.0.1
NuGet\Install-Package Norr.PerformanceMonitor.Attribution -Version 1.0.1
<PackageReference Include="Norr.PerformanceMonitor.Attribution" Version="1.0.1" />
<PackageVersion Include="Norr.PerformanceMonitor.Attribution" Version="1.0.1" />
<PackageReference Include="Norr.PerformanceMonitor.Attribution" />
paket add Norr.PerformanceMonitor.Attribution --version 1.0.1
#r "nuget: Norr.PerformanceMonitor.Attribution, 1.0.1"
#:package Norr.PerformanceMonitor.Attribution@1.0.1
#addin nuget:?package=Norr.PerformanceMonitor.Attribution&version=1.0.1
#tool nuget:?package=Norr.PerformanceMonitor.Attribution&version=1.0.1
Norr.PerformanceMonitor.Attribution
ð§ Source generator for automatic performance instrumentation in .NET.
Just add [MeasurePerformance]
to your methods â and get profiling for free.
ðĶ NuGet Package
ð GitHub Repository
âĻ What It Does
This package includes:
- ð§
[MeasurePerformance]
attribute - âïļ
PerformanceSourceGenerator
that auto-generates wrapper methods - ðŠķ Lightweight, Roslyn-based source generation (no runtime overhead)
- ð Automatically measures:
- âą Execution duration
- ð§ Memory allocation
- ðĨ CPU usage (if supported)
ð Example
using Norr.PerformanceMonitor.Attribution;
public class MyService
{
[MeasurePerformance]
public void DoHeavyWork()
{
Thread.Sleep(500);
}
}
After build, a partial method like this will be generated:
public partial void DoHeavyWork_WithPerf(IPerformanceMonitor monitor)
{
using var _ = monitor.Begin("MyService.DoHeavyWork");
DoHeavyWork();
}
Use the generated method wherever you want full performance tracing.
ð§Đ Usage with Norr.PerformanceMonitor
var service = new MyService();
service.DoHeavyWork_WithPerf(monitor);
You can then export data via:
- Console
- Prometheus
- OTLP
- Webhooks (Slack, Discord, etc.)
ð ïļ Requirements
- .NET 6 or newer (supports .NET Standard 2.0 for compatibility)
- Roslyn-compatible IDE (Visual Studio 2022+, Rider, etc.)
ðĶ Installation
dotnet add package Norr.PerformanceMonitor.Attribution
Make sure your .csproj
includes:
<EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
ð Related Packages
Norr.PerformanceMonitor
: Core performance monitoring engineNorr.PerformanceMonitor.Attribution
: Source generator & attributes
ð License
MIT License â See LICENSE
Built with by @berkayhuz
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.CodeAnalysis.CSharp (>= 4.14.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Norr.PerformanceMonitor.Attribution:
Package | Downloads |
---|---|
Norr.PerformanceMonitor.Benchmarks
Modular, production-grade .NET libraries by Norr. Clean Architecture, zero-bloat. |
GitHub repositories
This package is not used by any popular GitHub repositories.