public void SendANonEmptyMetricBatch()
        {
            var metricBatch = new NewRelicMetricBatch(
                metrics: new[]
            {
                NewRelicMetric.CreateGaugeMetric(
                    name: "TestMetric",
                    timestamp: null,
                    attributes: null,
                    value: 0),
            });

            var dataSender = new MetricDataSender(new TelemetryConfiguration()
            {
                ApiKey = "123456"
            });

            dataSender.WithHttpHandlerImpl((serializedJson) =>
            {
                var response = new HttpResponseMessage(System.Net.HttpStatusCode.OK);
                return(Task.FromResult(response));
            });

            var response = dataSender.SendDataAsync(metricBatch).Result;

            Assert.Equal(NewRelicResponseStatus.Success, response.ResponseStatus);
        }
Esempio n. 2
0
        private MetricsManager()
        {
            var telemetryConfig = new TelemetryConfiguration
            {
                ApiKey      = Properties.Settings.Default.NewRelicApiKey,
                ServiceName = ServiceName
            };

            _dataSender = new MetricDataSender(telemetryConfig);

            _checkTimer          = new Timer(30000);
            _checkTimer.Elapsed += (s, e) => CollectAndPostMetrics();
        }
        public void SendAnEmptyMetricBatch()
        {
            var spanBatch = MetricBatchBuilder.Create()
                            .Build();

            var dataSender = new MetricDataSender(new TelemetryConfiguration().WithApiKey("123456"));

            dataSender.WithHttpHandlerImpl((serializedJson) =>
            {
                var response = new HttpResponseMessage(System.Net.HttpStatusCode.OK);
                return(Task.FromResult(response));
            });

            var response = dataSender.SendDataAsync(spanBatch).Result;

            Assert.AreEqual(NewRelicResponseStatus.DidNotSend_NoData, response.ResponseStatus);
        }