/// <summary> /// Add metrics reporter. /// </summary> /// <param name="services">IServiceCollection to add the services to.</param> /// <param name="metricsOptions">Metrics configuration options.</param> /// <returns></returns> static void AddMetricsReporter(this IServiceCollection services, MetricsConfigurationOptions metricsOptions) { var metricsReporterOptions = new MetricsReporterOptions(metricsOptions); services.AddSingleton(metricsReporterOptions); services.AddHostedService <MetricsReporterService>(); }
/// <summary> /// Constructor of metrics reporter service. /// Creates new instance of class <see cref="MetricsReporterService"/>. /// </summary> public MetricsReporterService(IMetricsRoot metricsRoot, ILoggerFactory loggerFactory, MetricsReporterOptions options) { _logger = loggerFactory.CreateLogger <MetricsReporterService>(); _metricsRoot = metricsRoot; _options = options; }