Skip to content

Commit 19f3eff

Browse files
jeastham1993claude
andcommitted
fix: register DatadogTransactionTracker and IHttpClientFactory in AWS adapter
Without these registrations, resolving AcknowledgePrintJobCommandHandler in DRIVEN=AWS deployments failed with an unresolved-service exception. Also adds Activity span tagging for dsm.transaction_id and dsm.transaction.checkpoint in both Core and Client transaction trackers. Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
1 parent 70623ca commit 19f3eff

3 files changed

Lines changed: 18 additions & 0 deletions

File tree

print-service/src/Stickerlandia.PrintService.AWS/ServiceExtensions.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
using Microsoft.Extensions.Configuration;
1717
using Microsoft.Extensions.DependencyInjection;
1818
using Stickerlandia.PrintService.Core;
19+
using Stickerlandia.PrintService.Core.Observability;
1920
using Stickerlandia.PrintService.Core.Outbox;
2021
using Stickerlandia.PrintService.Core.PrintJobs;
2122

@@ -61,6 +62,9 @@ public static IServiceCollection AddAwsAdapters(this IServiceCollection services
6162

6263
services.AddSingleton<IPrintServiceEventPublisher, EventBridgeEventPublisher>();
6364

65+
services.AddHttpClient();
66+
services.AddSingleton<DatadogTransactionTracker>();
67+
6468
return services;
6569
}
6670
}

print-service/src/Stickerlandia.PrintService.Client/Telemetry/DatadogTransactionTracker.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
#pragma warning disable
66

7+
using System.Diagnostics;
78
using System.Globalization;
89
using System.IO.Compression;
910
using System.Net.Http.Headers;
@@ -47,6 +48,12 @@ internal async Task TrackTransactionAsync(string transactionId, string checkpoin
4748

4849
try
4950
{
51+
if (Activity.Current is not null)
52+
{
53+
Activity.Current.SetTag("dsm.transaction_id", transactionId);
54+
Activity.Current.SetTag("dsm.transaction.checkpoint", checkpoint);
55+
}
56+
5057
var timestampNanos = (DateTimeOffset.UtcNow.ToUnixTimeMilliseconds() * 1_000_000L)
5158
.ToString(CultureInfo.InvariantCulture);
5259

print-service/src/Stickerlandia.PrintService.Core/Observability/DatadogTransactionTracker.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
// This product includes software developed at Datadog (https://www.datadoghq.com/).
33
// Copyright 2026 Datadog, Inc.
44

5+
using System.Diagnostics;
56
using System.Globalization;
67
using System.IO.Compression;
78
using System.Net.Http.Headers;
@@ -47,6 +48,12 @@ public async Task TrackTransactionAsync(string transactionId, string checkpoint)
4748

4849
try
4950
{
51+
if (Activity.Current is not null)
52+
{
53+
Activity.Current.SetTag("dsm.transaction_id", transactionId);
54+
Activity.Current.SetTag("dsm.transaction.checkpoint", checkpoint);
55+
}
56+
5057
var timestampNanos = (DateTimeOffset.UtcNow.ToUnixTimeMilliseconds() * 1_000_000L)
5158
.ToString(CultureInfo.InvariantCulture);
5259

0 commit comments

Comments
 (0)