EAC.Infrastructure.Observability
0.1.0-rc.4
dotnet add package EAC.Infrastructure.Observability --version 0.1.0-rc.4
NuGet\Install-Package EAC.Infrastructure.Observability -Version 0.1.0-rc.4
<PackageReference Include="EAC.Infrastructure.Observability" Version="0.1.0-rc.4" />
<PackageVersion Include="EAC.Infrastructure.Observability" Version="0.1.0-rc.4" />
<PackageReference Include="EAC.Infrastructure.Observability" />
paket add EAC.Infrastructure.Observability --version 0.1.0-rc.4
#r "nuget: EAC.Infrastructure.Observability, 0.1.0-rc.4"
#:package EAC.Infrastructure.Observability@0.1.0-rc.4
#addin nuget:?package=EAC.Infrastructure.Observability&version=0.1.0-rc.4&prerelease
#tool nuget:?package=EAC.Infrastructure.Observability&version=0.1.0-rc.4&prerelease
EAC.Infrastructure.Observability
Desde 2026-10-09, Native AOT queda fuera del alcance por decisión del usuario. No se declara compatibilidad ni se exige su gate. Las referencias históricas no constituyen soporte vigente; build y tests ordinarios siguen siendo obligatorios.
Configuración y consumo
<PackageReference Include="EAC.Infrastructure.Observability" Version="0.1.0-rc.2" />
Referenciar el paquete no configura exporters. Un único registro incorpora el
observador transparente y un span Internal de todos los casos de uso
despachados por EAC.Application.Runtime; los registros AddUseCase existentes
no cambian:
services.AddEacObservability();
Cuando una operación requiere spans enriquecidos, la API genérica y sus selectores explícitos permanecen disponibles:
services.AddEacObservability<IssueOrderCommand, OrderId>();
services.AddTelemetryEnricher<IssueOrderCommand>(map =>
map.Add(
"order.id",
request => request.OrderId,
representation: TelemetryValueRepresentation.Hashed));
El paquete no posee una sección Eac:Observability: nombres de recursos,
exporters, endpoints, sampling y credenciales pertenecen al host y a las APIs
oficiales de OpenTelemetry. En un host HTTP EAC,
EAC.Hosting.AspNetCore compone opcionalmente OTLP en su único provider; este
paquete no activa un SDK ni selecciona un backend. En hosts distintos, el
consumidor agrega las fuentes públicas:
services.AddOpenTelemetry()
.WithTracing(tracing => tracing.AddSource(EacObservability.ActivitySourceName))
.WithMetrics(metrics => metrics.AddMeter(EacObservability.MeterName));
El span automático se abre antes de validation, behaviors y el caso de uso, con
nombre estable application.use_case {RequestType}. Conserva eac.operation.name,
eac.operation.type, eac.request.type y eac.result.status; errores esperados
marcan el span sin generar una excepción y cancelaciones no se marcan como error.
El meter EAC.Application.Runtime conserva eac.application.request.count,
eac.application.request.duration en segundos y eac.application.error.count.
Sus únicas dimensiones son operation y result; el observador nunca recibe
payloads. operation procede del manifiesto inmutable del Runtime, por lo que
cada caso de uso registrado, incluidos los futuros, queda cubierto sin mapa
manual. Un fallo de telemetría no altera el Result de la aplicación.
Las variables oficiales OTEL_SERVICE_NAME, OTEL_RESOURCE_ATTRIBUTES,
OTEL_TRACES_SAMPLER y las variables del exporter seleccionado conservan su
precedencia propia. Endpoints y credenciales se suministran desde secretos del
entorno, nunca desde este paquete ni desde telemetría.
| Configuración del host | Default | Obligatoria | Sensible | Cambio |
|---|---|---|---|---|
OTEL_SERVICE_NAME |
definido por el SDK | no | no | reinicio |
OTEL_RESOURCE_ATTRIBUTES |
vacío | no | puede contener datos operativos | reinicio |
OTEL_TRACES_SAMPLER |
definido por el SDK | no | no | reinicio |
| endpoint/headers del exporter | depende del exporter | solo si se habilita | sí | reinicio |
Los mappings funcionales permanecen en código porque contienen selectores CLR y políticas explícitas de clasificación. Una configuración inválida del SDK o exporter falla en el host propietario; el paquete sigue funcionando sin exporter y nunca expone payloads por reflexión.
Repositorio propietario del NuGet EAC.Infrastructure.Observability.
Eac:Observability:Tracing:ArgumentCapture controla los datos de spans
detallados. None es el default general; NamesAndTypes emite solamente
nombre y tipo; AllowListedValues admite valores primitivos anotados; All
es el modo diagnóstico obligatorio de Local y Dev, configurado desde
SCC. All permite a los paquetes propietarios emitir entradas, salidas,
resultados, SQL, parámetros y metadatos de mensajería o storage mediante
contratos tipados. Siempre sanea secretos, tokens, password, keys, auth,
cookies, connection strings, streams, bytes, binarios e imágenes, y limita
tamaño y profundidad. En Prd se fija Boundary + None; el host rechaza
All.
Estado actual: OBS-010 implementado; 0.1.0-alpha.2, 0.1.0-beta.1 y 0.1.0-rc.2 están publicados con evidencia Tekton. La promoción estable permanece aplazada.
| 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
- EAC.Application.Runtime (>= 0.1.0-rc.4)
- EAC.Foundation (>= 0.1.0-rc.4)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.12)
- Microsoft.Extensions.DependencyInjection (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
NuGet packages (6)
Showing the top 5 NuGet packages that depend on EAC.Infrastructure.Observability:
| Package | Downloads |
|---|---|
|
EAC.Hosting.AspNetCore
Native-first ASP.NET Core bootstrap orchestration for EAC services. |
|
|
EAC.Infrastructure.Messaging
Broker-neutral messaging contracts and execution for EAC applications. |
|
|
EAC.Infrastructure.Persistence.EntityFrameworkCore
Provider-neutral Entity Framework Core persistence adapter for EAC applications. |
|
|
EAC.Infrastructure.Persistence.EntityFrameworkCore.Messaging
Optional Entity Framework Core persistence adapter for EAC Messaging Outbox and Inbox. |
|
|
EAC.Infrastructure.Api.Http
Native-first HTTP content negotiation, response writing and navigation for EAC services. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0-rc.4 | 114 | 10/23/2026 |
| 0.1.0-rc.2 | 130 | 8/21/2026 |
| 0.1.0-rc.1 | 190 | 8/18/2026 |
| 0.1.0-beta.1 | 73 | 8/18/2026 |
| 0.1.0-alpha.2 | 87 | 8/18/2026 |