public static void Main(string[] args) { SelectProtocol(args); SelectHost(args); SelectPort(args); bool keepAlive = true; var paceMaker = SensuNinja.Get(_host, _port, _type, new HostInfoEnricher()); paceMaker.Start(new Heartbeat(AppName)); using (var client = Client()) { var monitor = new SensuMonitor(client, AppName); Console.WriteLine("Connected to server."); Menu(); while (keepAlive) { Console.WriteLine(""); var choice = Console.ReadKey(); if (choice.KeyChar == '1') { Console.WriteLine("Output: "); SendOk(monitor, Console.ReadLine()); } if (choice.KeyChar == '2') { Console.WriteLine("Output: "); SendAppWarning(monitor, Console.ReadLine()); } if (choice.KeyChar == '3') { Console.WriteLine("Output: "); SendAppError(monitor, Console.ReadLine()); } if (choice.KeyChar == '0') { Console.WriteLine("Output: "); ManualHeartbeat(monitor, Console.ReadLine()); } if (choice.KeyChar == 'q') { keepAlive = false; } Console.WriteLine(); } paceMaker.Stop(); } Environment.Exit(0); }
public void Heartbeat_WithNoParameters_SendsHeartbeat() { var client = new MockSensuClient(); var sut = new SensuMonitor(client, "testApp"); sut.Heartbeat(); var message = client.Messages.First(); Assert.IsType <Heartbeat>(message); }
public void Error_WithNoParameters_SendsAppError() { var client = new MockSensuClient(); var sut = new SensuMonitor(client, "testApp"); sut.Error("some_dependency"); var message = client.Messages.First(); Assert.IsType <Error>(message); }
public void Heartbeat_WithPeriod5_SetsTtlTo5() { var client = new MockSensuClient(); var sut = new SensuMonitor(client, "testApp"); sut.Heartbeat(period: 5); var message = client.Messages.First() as Heartbeat; Assert.Equal(5, message.Ttl); }
public void Heartbeat_WithNoParameters_SetsTtlTo60() { var client = new MockSensuClient(); var sut = new SensuMonitor(client, "testApp"); sut.Heartbeat(); var message = client.Messages.First() as Heartbeat; Assert.Equal(60, message.Ttl); }
public void Heartbeat_WithOutput_SetsOutputOnHeartbeat() { var text = "text"; var client = new MockSensuClient(); var sut = new SensuMonitor(client, "testApp"); sut.Heartbeat(message: text); var message = client.Messages.First() as Heartbeat; Assert.Equal(text, message.Output); }
private static void ManualHeartbeat(SensuMonitor monitor, string message) { monitor.Heartbeat(60, message); }
private static void SendAppError(SensuMonitor monitor, string message) { monitor.Error("some_metric", message); }
private static void SendAppWarning(SensuMonitor monitor, string message) { monitor.Warning("some_metric", message); }
private static void SendOk(SensuMonitor monitor, string message) { monitor.Ok("some_metric", message); }