public static RawMessage.Entry[] Build(Dictionary <DateTime, long> measurements) { var sortedMeasurements = measurements.OrderBy(kv => kv.Key).ToList(); var message = new TaggedLongValueOccurrence(); foreach (var kvp in sortedMeasurements) { Assert.True(message.TryRecord(kvp.Key.Ticks, kvp.Value)); } return(message.Entries); }
public Task Handle(TaggedLongValueOccurrence message, IMessageHandlerContext context) { var instanceId = EndpointInstanceId.From(context.MessageHeaders); var messageType = context.MessageHeaders[MetricHeaders.MetricType]; if (messageType == QueueLengthMessageType) { queueLengthProvider.Process(instanceId, message); } return(TaskEx.Completed); }
public void Process(EndpointInstanceId endpointInstanceId, TaggedLongValueOccurrence metricsReport) { var endpointInputQueue = new EndpointInputQueue(endpointInstanceId.EndpointName, metricsReport.TagValue); queueLengthStore.Store(metricsReport.Entries, endpointInputQueue); }
public Task Handle(TaggedLongValueOccurrence message, IMessageHandlerContext context) { return(RecordEndpointInstanceId(context)); }
public void Process(EndpointInstanceId endpointInstanceId, TaggedLongValueOccurrence metricsReport) { //HINT: ASQ server endpoints do not support endpoint level queue length monitoring }
public void Process(EndpointInstanceId endpointInstanceId, TaggedLongValueOccurrence metricsReport) { // The endpoint should not be sending this data }
public void Process(EndpointInstanceId endpointInstanceId, TaggedLongValueOccurrence metricsReport) { }
public void Process(EndpointInstanceId endpointInstanceId, TaggedLongValueOccurrence metricsReport) { //RabbitMQ does not support endpoint level queue length reports }