diff --git a/WebAPI/LearningHub.Nhs.Database/LearningHub.Nhs.Database.sqlproj b/WebAPI/LearningHub.Nhs.Database/LearningHub.Nhs.Database.sqlproj index 13479c06e..c59b04d24 100644 --- a/WebAPI/LearningHub.Nhs.Database/LearningHub.Nhs.Database.sqlproj +++ b/WebAPI/LearningHub.Nhs.Database/LearningHub.Nhs.Database.sqlproj @@ -517,6 +517,7 @@ + diff --git a/WebAPI/LearningHub.Nhs.Database/Scripts/Post-Deploy/Scripts/TD-4270_Archive_LogDb.sql b/WebAPI/LearningHub.Nhs.Database/Scripts/Post-Deploy/Scripts/TD-4270_Archive_LogDb.sql new file mode 100644 index 000000000..9272b0f02 --- /dev/null +++ b/WebAPI/LearningHub.Nhs.Database/Scripts/Post-Deploy/Scripts/TD-4270_Archive_LogDb.sql @@ -0,0 +1,21 @@ +-- Define the date 6 months ago +DECLARE @SixMonthsAgo DATE = DATEADD(MONTH, -6, GETDATE()); + + +IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'LogArchive' AND schema_id = SCHEMA_ID('hub')) +BEGIN + SELECT TOP (0) * + INTO hub.LogArchive + FROM hub.Log; +END + + +INSERT INTO hub.LogArchive ([Application], [Logged], [Level], [Message], [Logger], [Callsite], [Exception], [UserId], [Username]) +SELECT [Application], [Logged], [Level], [Message], [Logger], [Callsite], [Exception], [UserId], [Username] +FROM hub.Log +WHERE [Logged] < @SixMonthsAgo; + + +DELETE FROM hub.Log WHERE [Logged] < @SixMonthsAgo; + +