private static void CheckReconnection(StatsdConfig config) { SocketServer server = null; try { server = new SocketServer(config); using (var service = new DogStatsdService()) { service.Configure(config); service.Increment("test1"); Assert.AreEqual("test1:1|c", server.Stop().Single()); server.Dispose(); // Send a metric when the server is not running. service.Increment("test2"); Task.Delay(TimeSpan.FromMilliseconds(500)).Wait(); // Restart the server server = new SocketServer(config, removeUDSFileBeforeStarting: true); service.Increment("test3"); service.Dispose(); Assert.AreEqual("test3:1|c", server.Stop().Last()); } } finally { server?.Dispose(); } }
private static void CheckReconnection( Func <StatsdConfig, AbstractServer> serverFactory, StatsdConfig config) { AbstractServer server = null; try { server = serverFactory(config); using (var service = new DogStatsdService()) { service.Configure(config); service.Increment("test1"); Assert.AreEqual("test1:1|c", server.Stop().Single()); server.Dispose(); // Send a metric when the server is not running. service.Increment("test2"); Task.Delay(TimeSpan.FromMilliseconds(500)).Wait(); // Restart the server server = serverFactory(config); service.Increment("test3"); service.Dispose(); Assert.AreEqual("test3:1|c", server.Stop().Last()); } } finally { server?.Dispose(); } }
public void Dispose() { if (dogStatsdService != null) { dogStatsdService.Flush(); dogStatsdService.Dispose(); } }
private List <string> ReceiveData(DogStatsdService dogstasdService, string testServerName, int testPort, Action sendData) { using (var udpListener = new UdpListener(testServerName, testPort)) { var listenThread = new Thread(udpListener.ListenAndWait); listenThread.Start(); sendData(); dogstasdService.Dispose(); udpListener.Shutdown(); listenThread.Join(); return(udpListener.GetAndClearLastMessages()); } }
private void TestReceive( string testServerName, int testPort, string testCounterName, string expectedOutput, DogStatsdService dogStatsdService) { using (UdpListener udpListener = new UdpListener(testServerName, testPort)) { Thread listenThread = new Thread(udpListener.ListenAndWait); listenThread.Start(); dogStatsdService.Increment(testCounterName); dogStatsdService.Dispose(); udpListener.Shutdown(); listenThread.Join(); Assert.AreEqual(expectedOutput, udpListener.GetAndClearLastMessages()[0]); } }
private static void SendAndCheckMetricsAreReceived(StatsdConfig config, int metricToSendCount) { using (var service = new DogStatsdService()) { using (var server = new SocketServer(config)) { service.Configure(config); for (int i = 0; i < metricToSendCount; ++i) { service.Increment($"test{i}", tags: new[] { "KEY:VALUE" }); } service.Dispose(); var metricsReceived = server.Stop(); Assert.AreEqual(metricToSendCount, metricsReceived.Count); for (int i = 0; i < metricToSendCount; ++i) { Assert.AreEqual($"test{i}:1|c|#KEY:VALUE", metricsReceived[i]); } } } }
public void Cleanup() { _service.Dispose(); }
public void TearDownUdpListener() { _dogStatsdService.Dispose(); _udpListener.Dispose(); _udp.Dispose(); }
public void ClearUdpListenerMessages() { _udpListener.GetAndClearLastMessages(); // just to be sure that nothing is left over _dogStatsdService.Dispose(); }
public void Dispose() => _service.Dispose();