/// <inheritdoc />
        public RemoveMessageStatus Remove(IMessageId id, RemoveMessageReason reason)
        {
            var header = _getHeader.GetHeaders(id);

            if (header != null)
            {
                var spanContext = header.Extract(_tracer, _headers);
                if (spanContext != null)
                {
                    using (IScope scope = _tracer.BuildSpan("Remove").AddReference(References.FollowsFrom, spanContext).StartActive(finishSpanOnDispose: true))
                    {
                        scope.Span.SetTag("RemovedBecause", reason.ToString());
                        return(_handler.Remove(id, reason));
                    }
                }
                else
                {
                    using (IScope scope = _tracer.BuildSpan("Remove").StartActive(finishSpanOnDispose: true))
                    {
                        scope.Span.AddMessageIdTag(id);
                        scope.Span.SetTag("RemovedBecause", reason.ToString());
                        return(_handler.Remove(id, reason));
                    }
                }
            }
            else
            {
                using (IScope scope = _tracer.BuildSpan("Remove").StartActive(finishSpanOnDispose: true))
                {
                    scope.Span.AddMessageIdTag(id);
                    scope.Span.SetTag("RemovedBecause", reason.ToString());
                    return(_handler.Remove(id, reason));
                }
            }
        }
Ejemplo n.º 2
0
        /// <inheritdoc />
        public RemoveMessageStatus Remove(IMessageContext context, RemoveMessageReason reason)
        {
            var activityContext = context.Extract(_tracer, _headers);

            using (var scope = _tracer.StartActivity("Remove", ActivityKind.Internal, parentContext: activityContext))
            {
                scope?.AddMessageIdTag(context);
                scope?.SetTag("RemovedBecause", reason.ToString());
                return(_handler.Remove(context, reason));
            }
        }
Ejemplo n.º 3
0
        /// <inheritdoc />
        public RemoveMessageStatus Remove(IMessageId id, RemoveMessageReason reason)
        {
            var header = _getHeader.GetHeaders(id);

            if (header != null)
            {
                var activityContext = header.Extract(_tracer, _headers);
                using (var scope = _tracer.StartActivity("Remove", ActivityKind.Internal, parentContext: activityContext))
                {
                    scope?.AddMessageIdTag(id);
                    scope?.SetTag("RemovedBecause", reason.ToString());
                    return(_handler.Remove(id, reason));
                }
            }
            using (var scope = _tracer.StartActivity("Remove"))
            {
                scope?.AddMessageIdTag(id);
                scope?.SetTag("RemovedBecause", reason.ToString());
                return(_handler.Remove(id, reason));
            }
        }