public ReportRunner( Func <IMetricPayloadBuilder <T>, Task <bool> > flushAsync, IMetricPayloadBuilder <T> payloadBuilder, TimeSpan reportInterval, ILoggerFactory loggerFactory, Func <string, string, string> metricNameFormatter, MetricValueDataKeys customDataKeys = null) : this( flushAsync, payloadBuilder, reportInterval, typeof(ReportRunner <T>).Name, loggerFactory, metricNameFormatter, customDataKeys) { }
public ReportRunner( Func <IMetricPayloadBuilder <T>, Task <bool> > flushAsync, IMetricPayloadBuilder <T> payloadBuilder, TimeSpan reportInterval, string name, ILoggerFactory loggerFactory, Func <string, string, string> metricNameFormatter, MetricValueDataKeys customDataKeys = null) { ReportInterval = reportInterval; Name = name; _payloadBuilder = payloadBuilder; _metricNameFormatter = metricNameFormatter; _dataKeys = customDataKeys ?? new MetricValueDataKeys(); _logger = loggerFactory.CreateLogger <ReportRunner <T> >(); _flushAsync = flushAsync; }