File tree Expand file tree Collapse file tree 4 files changed +36
-24
lines changed
10/umbraco-cms/fundamentals/backoffice
13/umbraco-cms/fundamentals/backoffice
14/umbraco-cms/fundamentals/backoffice
15/umbraco-cms/fundamentals/backoffice Expand file tree Collapse file tree 4 files changed +36
-24
lines changed Original file line number Diff line number Diff line change @@ -78,12 +78,15 @@ public class AzureTableLogViewer : SerilogLogViewerSourceBase
7878 var requiredEntities = skip + take ;
7979 IEnumerable < AzureTableLogEntity > results = client .Query <AzureTableLogEntity >().Take (requiredEntities );
8080
81- return results
82- .Skip (skip )
83- .Take (take )
84- .Select (x => LogEventReader .ReadFromString (x .Data ))
85- .Where (filter .TakeLogEvent )
86- .ToList ();
81+ return results
82+ .Skip (skip )
83+ .Take (take )
84+ .Select (x => LogEventReader .ReadFromString (x .Data ))
85+ // Filter by timestamp to avoid retrieving all logs from the table, preventing memory and performance issues
86+ .Where (evt => evt .Timestamp >= logTimePeriod .StartTime .Date &&
87+ evt .Timestamp <= logTimePeriod .EndTime .Date .AddDays (1 ).AddSeconds (- 1 ))
88+ .Where (filter .TakeLogEvent )
89+ .ToList ();
8790 }
8891
8992 public override IReadOnlyList <SavedLogSearch >? GetSavedSearches ()
Original file line number Diff line number Diff line change @@ -80,12 +80,15 @@ public class AzureTableLogViewer : SerilogLogViewerSourceBase
8080 var requiredEntities = skip + take ;
8181 IEnumerable < AzureTableLogEntity > results = client .Query <AzureTableLogEntity >().Take (requiredEntities );
8282
83- return results
84- .Skip (skip )
85- .Take (take )
86- .Select (x => LogEventReader .ReadFromString (x .Data ))
87- .Where (filter .TakeLogEvent )
88- .ToList ();
83+ return results
84+ .Skip (skip )
85+ .Take (take )
86+ .Select (x => LogEventReader .ReadFromString (x .Data ))
87+ // Filter by timestamp to avoid retrieving all logs from the table, preventing memory and performance issues
88+ .Where (evt => evt .Timestamp >= logTimePeriod .StartTime .Date &&
89+ evt .Timestamp <= logTimePeriod .EndTime .Date .AddDays (1 ).AddSeconds (- 1 ))
90+ .Where (filter .TakeLogEvent )
91+ .ToList ();
8992 }
9093
9194 public override IReadOnlyList <SavedLogSearch >? GetSavedSearches ()
Original file line number Diff line number Diff line change @@ -80,12 +80,15 @@ public class AzureTableLogViewer : SerilogLogViewerSourceBase
8080 var requiredEntities = skip + take ;
8181 IEnumerable < AzureTableLogEntity > results = client .Query <AzureTableLogEntity >().Take (requiredEntities );
8282
83- return results
84- .Skip (skip )
85- .Take (take )
86- .Select (x => LogEventReader .ReadFromString (x .Data ))
87- .Where (filter .TakeLogEvent )
88- .ToList ();
83+ return results
84+ .Skip (skip )
85+ .Take (take )
86+ .Select (x => LogEventReader .ReadFromString (x .Data ))
87+ // Filter by timestamp to avoid retrieving all logs from the table, preventing memory and performance issues
88+ .Where (evt => evt .Timestamp >= logTimePeriod .StartTime .Date &&
89+ evt .Timestamp <= logTimePeriod .EndTime .Date .AddDays (1 ).AddSeconds (- 1 ))
90+ .Where (filter .TakeLogEvent )
91+ .ToList ();
8992 }
9093
9194 public override IReadOnlyList <SavedLogSearch >? GetSavedSearches ()
Original file line number Diff line number Diff line change @@ -80,12 +80,15 @@ public class AzureTableLogViewer : SerilogLogViewerSourceBase
8080 var requiredEntities = skip + take ;
8181 IEnumerable < AzureTableLogEntity > results = client .Query <AzureTableLogEntity >().Take (requiredEntities );
8282
83- return results
84- .Skip (skip )
85- .Take (take )
86- .Select (x => LogEventReader .ReadFromString (x .Data ))
87- .Where (filter .TakeLogEvent )
88- .ToList ();
83+ return results
84+ .Skip (skip )
85+ .Take (take )
86+ .Select (x => LogEventReader .ReadFromString (x .Data ))
87+ // Filter by timestamp to avoid retrieving all logs from the table, preventing memory and performance issues
88+ .Where (evt => evt .Timestamp >= logTimePeriod .StartTime .Date &&
89+ evt .Timestamp <= logTimePeriod .EndTime .Date .AddDays (1 ).AddSeconds (- 1 ))
90+ .Where (filter .TakeLogEvent )
91+ .ToList ();
8992 }
9093
9194 public override IReadOnlyList <SavedLogSearch >? GetSavedSearches ()
You can’t perform that action at this time.
0 commit comments