Replace custom named meter/activity source registration with Fundamentals AddNamedMeter/AddNamedActivitySource#2248
Conversation
…edMeter/AddNamedActivitySource
|
NuGet packages for this PR, e.g. Cratis.Arc: |
|
@copilot Rebase onto origin/main and fix any conflicts and build errors |
…ivitySource not yet published Cratis.Fundamentals 7.10.4 is not available on NuGet (latest is 7.10.3). Restore ActivitySourceServiceCollectionExtensions.cs and the original per-type AddActivitySource<T> registrations. Remove [FromKeyedServices] attributes and revert package versions to 7.10.3.
Done. Merged The build was failing because |
Removes the bespoke named/keyed registration helpers for
IActivitySource<T>andIMeter<T>and delegates to the new standardized API inCratis.Fundamentals7.10.4.Changed
AddCratisArcMeter()now delegates toservices.AddNamedMeter(Internals.MeterName)(#issue)AddCratisArcActivitySource()now delegates toservices.AddNamedActivitySource(Internals.ActivitySourceName)— replaces 6 explicit per-type registrations with one open-generic keyed registration (#issue)IActivitySource<T>consumer constructor parameters annotated with[FromKeyedServices(Internals.ActivitySourceName)]:CommandFilters,CommandPipeline,QueryFilters,QueryPipeline,IdentityProvider,CommandActionFilter,QueryActionFilter(#issue)IMeter<IMongoClient>factory lambda replaced withservices.AddNamedMeter(Internals.MeterName); the open-generic keyed registration coversIMeter<IMongoClient>automatically (#issue)GetRequiredKeyedService<IActivitySource<T>>(key)(#issue)Cratis.FundamentalsandCratis.Metrics.Roslynto7.10.4(#issue)Removed
ActivitySourceServiceCollectionExtensions.cs— customAddActivitySource(name)/AddActivitySource<T>(name)helpers replaced by Fundamentals API (#issue)