![]() |
VOOZH | about |
dotnet add package Rig.TUnit.Observability.Tracing --version 0.1.0-beta.2
NuGet\Install-Package Rig.TUnit.Observability.Tracing -Version 0.1.0-beta.2
<PackageReference Include="Rig.TUnit.Observability.Tracing" Version="0.1.0-beta.2" />
<PackageVersion Include="Rig.TUnit.Observability.Tracing" Version="0.1.0-beta.2" />Directory.Packages.props
<PackageReference Include="Rig.TUnit.Observability.Tracing" />Project file
paket add Rig.TUnit.Observability.Tracing --version 0.1.0-beta.2
#r "nuget: Rig.TUnit.Observability.Tracing, 0.1.0-beta.2"
#:package Rig.TUnit.Observability.Tracing@0.1.0-beta.2
#addin nuget:?package=Rig.TUnit.Observability.Tracing&version=0.1.0-beta.2&prereleaseInstall as a Cake Addin
#tool nuget:?package=Rig.TUnit.Observability.Tracing&version=0.1.0-beta.2&prereleaseInstall as a Cake Tool
In-memory OpenTelemetry tracing fixture with
InMemoryExporterand fluentTraceAssertfor span / tag / status / parent-child verification.
The tracing counterpart to Rig.TUnit.Observability.Logging.
TracingFixture wires a TracerProvider with an InMemoryExporter so
every Activity emitted through a known ActivitySource gets captured.
TraceAssert is the fluent DSL: .HasSpan(name).WithTag(…).WithStatus (Ok).DurationLessThan(1s).
OpenTelemetry + .Exporter.InMemory (transitive)using System.Diagnostics;
using Rig.TUnit.Observability.Tracing.Fixtures;
using Rig.TUnit.Observability.Tracing.Options;
await using var fx = new TracingFixture(new TracingFixtureOptions { ServiceName = "my-svc" });
await fx.InitializeAsync();
using (var act = fx.ActivitySource.StartActivity("op.work"))
{
act?.SetStatus(ActivityStatusCode.Ok);
}
| Property | Type | Default | Description |
|---|---|---|---|
ServiceName |
string |
$"rigtunit-{IsolationKey}" |
OTEL resource attribute |
ActivitySourceName |
string |
"Rig.TUnit.Tests" |
Source name listened to |
RecordException |
bool |
true |
Auto-record exceptions as span events |
Rig.TUnit.Observability.Tracing.Fixtures.TracingFixtureRig.TUnit.Observability.Tracing.Options.TracingFixtureOptionsRig.TUnit.Observability.Tracing.Builder.TracingRigBuilderRig.TUnit.Observability.Tracing.Assertions.TraceAssertEach TracingFixture owns its exporter. ServiceName includes
IsolationKey so spans stay distinguishable across parallel fixtures.
HasSpan("name") reports not-found — ActivitySource name
mismatch. Check fx.ActivitySource.Name matches what the code under
test uses.Task.Run — Activity.Current is
AsyncLocal and does cross Task.Run, but a thread-pool worker
executed before the Activity started loses context. Instrument
with explicit ActivityContext propagation.See .
Stop — mutation attempts are silently
ignored by OTEL SDK.InMemoryExporter keeps all spans until fixture disposal; long test
runs with millions of spans can OOM. Call fx.Clear() between test
phases if needed.Unset by default; promoting to Ok or Error
requires an explicit SetStatus call.See ;
baseline in benchmarks/baseline-005.json.
MIT. See .
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
Showing the top 2 NuGet packages that depend on Rig.TUnit.Observability.Tracing:
| Package | Downloads |
|---|---|
|
Rig.TUnit.All
Meta-package containing every Rig.TUnit.* package. DISCOURAGED — prefer per-feature or per-stack meta-packages (Rig.TUnit, Rig.TUnit.Microservices). |
|
|
Rig.TUnit.Microservices
Meta-package: Core + Mediator + Grpc + Outbox + Tracing + Jwt + Seq — the opinionated microservice testing kit. |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0-beta.2 | 68 | 4/27/2026 |
| 0.0.0-alpha.0.14 | 67 | 4/26/2026 |