public void Can_use_uds_socket_reporter_overriding_flush_interval() { // Arrange var formatter = new TestMetricsFormatter(); var flushInterval = TimeSpan.FromDays(1); var builder = new MetricsBuilder().Report.OverUds(formatter, defaultAddress, flushInterval); // Act var metrics = builder.Build(); // Assert metrics.Reporters.Should().Contain(reportMetrics => reportMetrics is SocketMetricsReporter); metrics.Reporters.First().FlushInterval.Should().Be(flushInterval); }
public void Can_use_uds_socket_reporter() { // Arrange var formatter = new TestMetricsFormatter(); var builder = new MetricsBuilder().Report.OverUds(formatter, defaultUnixAddress); // Act var metrics = builder.Build(); // Assert metrics.Reporters.Should().Contain(reportMetrics => reportMetrics is SocketMetricsReporter); metrics.Reporters.First().FlushInterval.Should().Be(AppMetricsConstants.Reporting.DefaultFlushInterval); metrics.Reporters.First().Filter.Should().BeOfType <NullMetricsFilter>(); metrics.Reporters.First().Formatter.Should().BeOfType <TestMetricsFormatter>(); }
public void Socket_metrics_reporter_expect_socket_settings() { // Arrange Action action = () => { var formatter = new TestMetricsFormatter(); var options = new MetricsReportingSocketOptions { MetricsOutputFormatter = formatter }; // Act var reporter = new SocketMetricsReporter(options); }; // Assert action.Should().Throw <ArgumentNullException>(); }
public async Task Can_flush_metrics_to_console_with_options() { // Arrange var filter = new MetricsFilter().WhereType(MetricType.Apdex); var formatter = new TestMetricsFormatter(); var interval = TimeSpan.FromDays(1); var options = new MetricsReportingConsoleOptions { Filter = filter, MetricsOutputFormatter = formatter, FlushInterval = interval }; var reporter = new ConsoleMetricsReporter(options); var snapshot = new MetricsDataValueSource(DateTime.Now, Enumerable.Empty <MetricsContextValueSource>()); // Act var result = await reporter.FlushAsync(snapshot, CancellationToken.None); // Assert result.Should().BeTrue(); }
public async Task Can_flush_metrics_via_sockets_with_options() { // Arrange var filter = new MetricsFilter().WhereType(MetricType.Apdex); var formatter = new TestMetricsFormatter(); var interval = TimeSpan.FromDays(1); var settings = new SocketSettings(defaultProtocol, defaultAddress, defaultPort); var options = new MetricsReportingSocketOptions { Filter = filter, FlushInterval = interval, MetricsOutputFormatter = formatter, SocketSettings = settings }; var reporter = new SocketMetricsReporter(options); var snapshot = new MetricsDataValueSource(DateTime.Now, Enumerable.Empty <MetricsContextValueSource>()); // Act var result = await reporter.FlushAsync(snapshot, CancellationToken.None); // Assert result.Should().BeTrue(); }