Example #1
0
 protected virtual void ProcessMessageTimeout(MessageDefinition requestDefinition, TimeSpan elapsed, Guid correlationId)
 {
     _logSlaBreach("SLA={0} Response=monitor-timed-out ResponseTime={1} milliseconds CorrelationId={2}", new object[] { requestDefinition.Type, (long)elapsed.TotalMilliseconds, correlationId });
 }
Example #2
0
 /// <summary>
 /// Logs the information that request with <c>correlationId</c> would not be monitored due to fact that quota for requests of this type has been already reached.
 /// The log level of this message is WARN
 /// </summary>
 /// <param name="requestDefinition">Message definition.</param>
 /// <param name="correlationId">Correlation ID</param>
 protected virtual void ProcessQuotaReached(MessageDefinition requestDefinition, Guid correlationId)
 {
     _logger.WarnFormat("SLA={0} monitoring message quota reached. Message with CorrelationId={1} is not going to be monitored.", requestDefinition.Type, correlationId);
 }
Example #3
0
 /// <summary>
 /// Begins a SLA definition configuration for TRequest request message.
 /// </summary>
 /// <typeparam name="TRequest">Type of request message</typeparam>
 /// <param name="correlationFn">Method to retrieve request-response correlation ID for TRequest</param>
 public static SlaDefinitionBuilder For <TRequest>(Func <TRequest, Guid> correlationFn)
 {
     return(new SlaDefinitionBuilder(MessageDefinition.Create(correlationFn)));
 }
Example #4
0
 /// <summary>
 /// Defines SLA for TRequest - TResponse messages
 /// </summary>
 /// <typeparam name="TResponse">Type of response message</typeparam>
 /// <param name="sla">SLA</param>
 /// <param name="correlationFn">Method to retrieve request-response correlation ID for TResponse</param>
 public SlaDefinitionBuilder AddSla <TResponse>(TimeSpan sla, Func <TResponse, Guid> correlationFn)
 {
     _definitions.Add(new SlaDefinition(_request, MessageDefinition.Create(correlationFn), sla));
     return(this);
 }
Example #5
0
 private SlaDefinitionBuilder(MessageDefinition request)
 {
     _request = request;
 }
Example #6
0
 public SlaDefinition(MessageDefinition request, MessageDefinition response, TimeSpan sla)
 {
     Request  = request;
     Response = response;
     Sla      = sla;
 }