From 1e9cc0bb93590b515b2194ecba9427e5955d30bb Mon Sep 17 00:00:00 2001 From: Sophia Tevosyan Date: Tue, 23 Jun 2026 12:35:53 -0700 Subject: [PATCH 1/3] added the LastEvents field --- src/DurableTask.AzureStorage/AnalyticsEventSource.cs | 2 ++ src/DurableTask.AzureStorage/Logging/LogEvents.cs | 8 +++++++- src/DurableTask.AzureStorage/Logging/LogHelper.cs | 6 ++++-- .../Tracking/AzureTableTrackingStore.cs | 7 +++++-- 4 files changed, 18 insertions(+), 5 deletions(-) diff --git a/src/DurableTask.AzureStorage/AnalyticsEventSource.cs b/src/DurableTask.AzureStorage/AnalyticsEventSource.cs index 5f04c0bca..fa13ca56e 100644 --- a/src/DurableTask.AzureStorage/AnalyticsEventSource.cs +++ b/src/DurableTask.AzureStorage/AnalyticsEventSource.cs @@ -318,6 +318,7 @@ public void FetchedInstanceHistory( long LatencyMs, string ETag, DateTime LastCheckpointTime, + string LatestEvents, string AppName, string ExtensionVersion) { @@ -333,6 +334,7 @@ public void FetchedInstanceHistory( LatencyMs, ETag ?? string.Empty, LastCheckpointTime, + LatestEvents, AppName, ExtensionVersion); } diff --git a/src/DurableTask.AzureStorage/Logging/LogEvents.cs b/src/DurableTask.AzureStorage/Logging/LogEvents.cs index 0d9f91214..cd63f405a 100644 --- a/src/DurableTask.AzureStorage/Logging/LogEvents.cs +++ b/src/DurableTask.AzureStorage/Logging/LogEvents.cs @@ -745,7 +745,8 @@ public FetchedInstanceHistory( int requestCount, long latencyMs, string eTag, - DateTime lastCheckpointTime) + DateTime lastCheckpointTime, + string latestEvents) { this.Account = account; this.TaskHub = taskHub; @@ -757,6 +758,7 @@ public FetchedInstanceHistory( this.LatencyMs = latencyMs; this.ETag = eTag; this.LastCheckpointTime = lastCheckpointTime; + this.LatestEvents = latestEvents; } [StructuredLogField] @@ -789,6 +791,9 @@ public FetchedInstanceHistory( [StructuredLogField] public DateTime LastCheckpointTime { get; } + [StructuredLogField] + public string LatestEvents { get; } + public override EventId EventId => new EventId( EventIds.FetchedInstanceHistory, nameof(EventIds.FetchedInstanceHistory)); @@ -811,6 +816,7 @@ void IEventSourceEvent.WriteEventSource() => AnalyticsEventSource.Log.FetchedIns this.LatencyMs, this.ETag, this.LastCheckpointTime, + this.LatestEvents, Utils.AppName, Utils.ExtensionVersion); } diff --git a/src/DurableTask.AzureStorage/Logging/LogHelper.cs b/src/DurableTask.AzureStorage/Logging/LogHelper.cs index e8fe9438e..e4ecaae14 100644 --- a/src/DurableTask.AzureStorage/Logging/LogHelper.cs +++ b/src/DurableTask.AzureStorage/Logging/LogHelper.cs @@ -261,7 +261,8 @@ internal void FetchedInstanceHistory( int requestCount, long latencyMs, string eTag, - DateTime lastCheckpointTime) + DateTime lastCheckpointTime, + string latestEvents) { var logEvent = new LogEvents.FetchedInstanceHistory( account, @@ -273,7 +274,8 @@ internal void FetchedInstanceHistory( requestCount, latencyMs, eTag, - lastCheckpointTime); + lastCheckpointTime, + latestEvents); this.WriteStructuredLog(logEvent); } diff --git a/src/DurableTask.AzureStorage/Tracking/AzureTableTrackingStore.cs b/src/DurableTask.AzureStorage/Tracking/AzureTableTrackingStore.cs index ca98f4dd3..f1a18e187 100644 --- a/src/DurableTask.AzureStorage/Tracking/AzureTableTrackingStore.cs +++ b/src/DurableTask.AzureStorage/Tracking/AzureTableTrackingStore.cs @@ -14,6 +14,7 @@ namespace DurableTask.AzureStorage.Tracking { using System; + using System.Collections; using System.Collections.Concurrent; using System.Collections.Generic; using System.Diagnostics; @@ -226,7 +227,8 @@ public override async Task GetHistoryEventsAsync(string in results.RequestCount, results.ElapsedMilliseconds, eTagValue?.ToString(), - checkpointCompletionTime); + checkpointCompletionTime, + string.Join(",", historyEvents.Skip(Math.Max(0, historyEvents.Count - 10)).Select(e => e.EventType.ToString()))); return new OrchestrationHistory(historyEvents, checkpointCompletionTime, eTagValue, trackingStoreContext); } @@ -261,7 +263,8 @@ async Task> QueryHistoryAsync(string filter, string i results.RequestCount, results.ElapsedMilliseconds, eTag: string.Empty, - DateTime.MinValue); + DateTime.MinValue, + string.Join(",", entities.Skip(Math.Max(0, entities.Count - 10)).Select(e => e.GetString(nameof(HistoryEvent.EventType))))); return entities; } From 7061025a39834666397cfc06db3da758f589d577 Mon Sep 17 00:00:00 2001 From: Sophia Tevosyan Date: Tue, 23 Jun 2026 12:43:27 -0700 Subject: [PATCH 2/3] removed unnecessary usings --- .../Tracking/AzureTableTrackingStore.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/DurableTask.AzureStorage/Tracking/AzureTableTrackingStore.cs b/src/DurableTask.AzureStorage/Tracking/AzureTableTrackingStore.cs index 24c157509..6cecb9d66 100644 --- a/src/DurableTask.AzureStorage/Tracking/AzureTableTrackingStore.cs +++ b/src/DurableTask.AzureStorage/Tracking/AzureTableTrackingStore.cs @@ -14,8 +14,6 @@ namespace DurableTask.AzureStorage.Tracking { using System; - using System.Collections; - using System.Collections.Concurrent; using System.Collections.Generic; using System.Diagnostics; using System.Linq; From 0a6f80ff9b5a546a432844d153707332605f0bff Mon Sep 17 00:00:00 2001 From: Sophia Tevosyan Date: Tue, 23 Jun 2026 13:10:10 -0700 Subject: [PATCH 3/3] updated the log event version --- src/DurableTask.AzureStorage/AnalyticsEventSource.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/DurableTask.AzureStorage/AnalyticsEventSource.cs b/src/DurableTask.AzureStorage/AnalyticsEventSource.cs index fa13ca56e..38b6b2ba6 100644 --- a/src/DurableTask.AzureStorage/AnalyticsEventSource.cs +++ b/src/DurableTask.AzureStorage/AnalyticsEventSource.cs @@ -306,7 +306,7 @@ public void PoisonMessageDetected( ExtensionVersion); } - [Event(EventIds.FetchedInstanceHistory, Level = EventLevel.Informational, Version = 4)] + [Event(EventIds.FetchedInstanceHistory, Level = EventLevel.Informational, Version = 5)] public void FetchedInstanceHistory( string Account, string TaskHub,