ServiceSpy by jjxtra

<PackageReference Include="ServiceSpy" Version="1.0.1" />

 MetadataStore

public sealed class MetadataStore : IMetadataStore, IDisposable
Stores metadata for services and performs health checks
public MetadataStore(INotificationReceiver notificationReceiver, IMetadataHealthCheckStore healthCheckStore, TimeSpan? healthyMetadataCacheTime = default)

Constructor

public void Dispose()

public Task<IReadOnlyCollection<ServiceMetadata>> GetHealthyMetadatasAsync(bool cache = true, CancellationToken cancelToken = default)

public Task<IReadOnlyCollection<ServiceMetadata>> GetMetadatasAsync(Guid? serviceId = default, CancellationToken cancelToken = default)

public Task<bool> RemoveAsync(ServiceMetadata metadata, CancellationToken cancelToken = default)

public Task UpsertAsync(ServiceMetadata metadata, CancellationToken cancelToken = default)