Example #1
0
 public bool Passes(CallSummary callSummary)
 {
     return(FilterHelper.PassesStringFilter(CallId, callSummary.CallId, this.CaseSensitive, this.UseRegex) &&
            FilterHelper.PassesStringFilter(FinalState, callSummary.FinalState, this.CaseSensitive, this.UseRegex) &&
            FilterHelper.PassesRecordFilter(RecordName, RecordValue, this.CaseSensitive, this.UseRegex, callSummary.Records) &&
            FilterHelper.PassesTimeFilter(callSummary.TimeIn, TimeInAfterActive, TimeInAfter, TimeInBeforeActive, TimeInBefore, TimeInEmpty) &&
            FilterHelper.PassesTimeFilter(callSummary.FinalStateTime, FinalStateTimeAfterActive, FinalStateTimeAfter, FinalStateTimeBeforeActive, FinalStateTimeBefore, FinalStateTimeEmpty) &&
            FilterHelper.PassesMinMaxNumberFilter(CallbackAttemptsMinActive, CallbackAttemptsMin, CallbackAttemptsMaxActive, CallbackAttemptsMax, callSummary.CallbackAttempts));
 }
        public async Task <IServiceRemotingResponseMessage> HandleRequestResponseAsync(
            IServiceRemotingRequestContext requestContext,
            IServiceRemotingRequestMessage requestMessage)
        {
            Dictionary <string, string> context = ExtractContextProperties(requestMessage);
            string methodName = MethodResolver.GetMethodName(requestMessage);

            Exception gex = null;

            using (L.Context(context))
            {
                using (var time = new TimeMeasure())
                {
                    try
                    {
                        return(await _innerHandler.HandleRequestResponseAsync(requestContext, requestMessage));
                    }
                    catch (Exception ex)
                    {
                        gex = ex;
                        throw;
                    }
                    finally
                    {
                        if (_raiseSummary != null)
                        {
                            var summary = new CallSummary(methodName, gex, time.ElapsedTicks);
                            _raiseSummary(summary);
                        }

                        _log.Request(methodName, time.ElapsedTicks, gex,
                                     context.ToDictionary(k => k.Key, v => (object)(v.Value)));
                    }
                }
            }
        }
 private void RaiseSummary(CallSummary summary)
 {
     log.Trace("call {0} completed in {1}", summary.CallName, summary.DurationTicks, summary.Error);
 }
Example #4
0
 private void RaiseSummary(CallSummary summary)
 {
     //log.Trace("call {0} completed in {1} ticks", summary.CallName, summary.DurationTicks);
 }