Bravellian.Platform.Observability
2026.2.3.1131
dotnet add package Bravellian.Platform.Observability --version 2026.2.3.1131
NuGet\Install-Package Bravellian.Platform.Observability -Version 2026.2.3.1131
<PackageReference Include="Bravellian.Platform.Observability" Version="2026.2.3.1131" />
<PackageVersion Include="Bravellian.Platform.Observability" Version="2026.2.3.1131" />
<PackageReference Include="Bravellian.Platform.Observability" />
paket add Bravellian.Platform.Observability --version 2026.2.3.1131
#r "nuget: Bravellian.Platform.Observability, 2026.2.3.1131"
#:package Bravellian.Platform.Observability@2026.2.3.1131
#addin nuget:?package=Bravellian.Platform.Observability&version=2026.2.3.1131
#tool nuget:?package=Bravellian.Platform.Observability&version=2026.2.3.1131
Bravellian.Platform.Observability
Shared observability primitives for platform subsystems.
Purpose
Bravellian.Platform.Observability supplies conventions and lightweight helpers that connect:
- correlation contexts
- operation tracking
- audit events
- inbox/outbox metadata
It keeps the surface area small while making observability data consistent across apps.
Conventions
Standard event names are defined in PlatformEventNames:
outbox.message.processedwebhook.receivedemail.sentoperation.startedoperation.completedoperation.failed
Standard tag keys are defined in PlatformTagKeys:
tenantpartitionprovidermessageKeyoperationIdoutboxMessageIdinboxMessageIdwebhookEventId
Usage
Emit coordinated operation + audit events:
var emitter = new PlatformEventEmitter(auditWriter, operationTracker, correlationAccessor);
var operationId = await emitter.EmitOperationStartedAsync(
"NightlyImport",
correlationContext: null,
parentOperationId: null,
tags: new Dictionary<string, string>
{
[PlatformTagKeys.Tenant] = "tenant-1",
},
cancellationToken);
await emitter.EmitOperationCompletedAsync(
operationId,
OperationStatus.Succeeded,
"Completed",
correlationContext: null,
tags: null,
cancellationToken);
For webhooks and email, use PlatformTagKeys to capture provider, message keys, and webhook IDs
and emit audit events with PlatformEventNames.
Metrics Integration
For Prometheus scraping and OpenTelemetry-based exports, use:
Bravellian.Platform.Metrics.AspNetCorefor ASP.NET Core appsBravellian.Platform.Metrics.HttpServerfor self-hosted scrapers
These packages complement the database-backed metrics exporter and reuse the same Meter sources.
| Product | Versions 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. |
-
net10.0
- Bravellian.Platform (>= 2026.2.3.1131)
- Bravellian.Platform.Audit (>= 2026.2.3.1131)
- Bravellian.Platform.Correlation (>= 2026.2.3.1131)
- Bravellian.Platform.Operations (>= 2026.2.3.1131)
NuGet packages (5)
Showing the top 5 NuGet packages that depend on Bravellian.Platform.Observability:
| Package | Downloads |
|---|---|
|
Bravellian.Platform.SqlServer
SQL Server provider for Bravellian.Platform. |
|
|
Bravellian.Platform.Email
Provider-agnostic email outbox primitives and dispatching. |
|
|
Bravellian.Platform.Webhooks
Provider-agnostic webhook primitives and processing pipeline. |
|
|
Bravellian.Platform.Email.Postmark
Postmark adapter for Bravellian.Platform.Email outbox dispatching. |
|
|
Bravellian.Platform.Email.AspNetCore
ASP.NET Core helpers for Bravellian.Platform.Email outbox integrations. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2026.2.3.1131 | 185 | 2/3/2026 |
| 2026.2.3.387 | 165 | 2/3/2026 |
| 2026.2.3.215 | 318 | 2/3/2026 |
| 2026.2.3.196 | 167 | 2/3/2026 |
| 2026.2.2.1402 | 167 | 2/2/2026 |
| 2026.2.2.1040 | 163 | 2/2/2026 |
| 2026.2.1.1354 | 164 | 2/1/2026 |
| 2026.2.1.1297 | 178 | 2/1/2026 |
| 2026.2.1.1217 | 170 | 2/1/2026 |
| 2026.2.1.333 | 170 | 2/1/2026 |
| 2026.2.1.326 | 166 | 2/1/2026 |
| 2026.2.1.159 | 161 | 2/1/2026 |
| 2026.1.31.455 | 179 | 1/31/2026 |
| 2026.1.30.391 | 161 | 1/30/2026 |
| 2026.1.29.1054 | 163 | 1/29/2026 |
| 2026.1.28.1297 | 167 | 1/28/2026 |
| 2026.1.28.293 | 164 | 1/28/2026 |
| 2026.1.27.1127 | 167 | 1/27/2026 |