From e1080b62c9b5532939688db7f9e18e472a1ccc60 Mon Sep 17 00:00:00 2001 From: Damien ardouin Date: Wed, 27 Dec 2023 16:50:42 -0500 Subject: [PATCH] Skipped pipelines if CloudEvent (#77) --- .../ApplicationInsightsPublishingDomainEventBehavior.cs | 2 +- .../TracingPublishingDomainEventBehavior.cs | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/Workleap.DomainEventPropagation.Publishing.ApplicationInsights/ApplicationInsightsPublishingDomainEventBehavior.cs b/src/Workleap.DomainEventPropagation.Publishing.ApplicationInsights/ApplicationInsightsPublishingDomainEventBehavior.cs index 90dd82ae..8cc1df46 100644 --- a/src/Workleap.DomainEventPropagation.Publishing.ApplicationInsights/ApplicationInsightsPublishingDomainEventBehavior.cs +++ b/src/Workleap.DomainEventPropagation.Publishing.ApplicationInsights/ApplicationInsightsPublishingDomainEventBehavior.cs @@ -14,7 +14,7 @@ public ApplicationInsightsPublishingDomainEventBehavior(TelemetryClient? telemet public Task HandleAsync(DomainEventWrapperCollection domainEventWrappers, DomainEventsHandlerDelegate next, CancellationToken cancellationToken) { - return this._telemetryClient == null + return this._telemetryClient == null || domainEventWrappers.DomainSchema == EventSchema.CloudEvent ? next(domainEventWrappers, cancellationToken) : this.HandleWithTelemetry(domainEventWrappers, next, cancellationToken); } diff --git a/src/Workleap.DomainEventPropagation.Publishing/TracingPublishingDomainEventBehavior.cs b/src/Workleap.DomainEventPropagation.Publishing/TracingPublishingDomainEventBehavior.cs index 41c70a1a..94ebbfc7 100644 --- a/src/Workleap.DomainEventPropagation.Publishing/TracingPublishingDomainEventBehavior.cs +++ b/src/Workleap.DomainEventPropagation.Publishing/TracingPublishingDomainEventBehavior.cs @@ -8,6 +8,12 @@ internal sealed class TracingPublishingDomainEventBehavior : IPublishingDomainEv { public async Task HandleAsync(DomainEventWrapperCollection domainEventWrappers, DomainEventsHandlerDelegate next, CancellationToken cancellationToken) { + if (domainEventWrappers.DomainSchema == EventSchema.CloudEvent) + { + await next(domainEventWrappers, cancellationToken).ConfigureAwait(false); + return; + } + var activityName = TracingHelper.GetEventGridEventsPublisherActivityName(domainEventWrappers.DomainEventName); using var activity = TracingHelper.StartProducerActivity(activityName);