From bc1889739cf9e82a8c62ecc044a19701845a20a3 Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Mon, 4 Aug 2025 11:57:42 -0700 Subject: [PATCH 1/2] Update query to reference auditlog.Client API Actions --- WNPRC_EHR/resources/queries/core/SiteBackupLog.sql | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/WNPRC_EHR/resources/queries/core/SiteBackupLog.sql b/WNPRC_EHR/resources/queries/core/SiteBackupLog.sql index b6b170390..e2742dc0c 100644 --- a/WNPRC_EHR/resources/queries/core/SiteBackupLog.sql +++ b/WNPRC_EHR/resources/queries/core/SiteBackupLog.sql @@ -18,9 +18,7 @@ EventType, date, comment -FROM auditlog.audit a +FROM auditlog."Client API Actions" a WHERE -a.key1 = 'LabKey Server Backup' AND -a.EventType = 'Client API Actions' - +a.key1 = 'LabKey Server Backup' From 6c1512b813a4ef2c77472b990dc6739d712383ed Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Mon, 4 Aug 2025 14:12:29 -0700 Subject: [PATCH 2/2] Query "Client API Actions" audit event table directly and use modern column names --- WNPRC_EHR/resources/queries/core/SiteBackupLog.sql | 3 +-- .../notification/AdminAlertsNotificationRevamp.java | 9 +++------ .../wnprc_ehr/notification/SiteErrorAlertsRevamp.java | 11 +++-------- docker/ehrcron/scripts/pg_backup/lkServerBackup.pl | 2 +- 4 files changed, 8 insertions(+), 17 deletions(-) diff --git a/WNPRC_EHR/resources/queries/core/SiteBackupLog.sql b/WNPRC_EHR/resources/queries/core/SiteBackupLog.sql index e2742dc0c..22258f6b0 100644 --- a/WNPRC_EHR/resources/queries/core/SiteBackupLog.sql +++ b/WNPRC_EHR/resources/queries/core/SiteBackupLog.sql @@ -20,5 +20,4 @@ comment FROM auditlog."Client API Actions" a -WHERE -a.key1 = 'LabKey Server Backup' +WHERE a.SubType = 'LabKey Server Backup' diff --git a/WNPRC_EHR/src/org/labkey/wnprc_ehr/notification/AdminAlertsNotificationRevamp.java b/WNPRC_EHR/src/org/labkey/wnprc_ehr/notification/AdminAlertsNotificationRevamp.java index 00782608f..01f51bc7a 100644 --- a/WNPRC_EHR/src/org/labkey/wnprc_ehr/notification/AdminAlertsNotificationRevamp.java +++ b/WNPRC_EHR/src/org/labkey/wnprc_ehr/notification/AdminAlertsNotificationRevamp.java @@ -5,10 +5,8 @@ import org.labkey.api.data.SimpleFilter; import org.labkey.api.data.Sort; import org.labkey.api.module.Module; -import org.labkey.api.query.FieldKey; import org.labkey.api.security.User; -import java.lang.reflect.Array; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; @@ -142,14 +140,13 @@ void getNumClientErrorsSinceYesterday() { // Creates filter. Date dateYesterday = dateToolkit.getDateXDaysFromNow(-1); SimpleFilter myFilter = new SimpleFilter("date", dateYesterday, CompareType.DATE_GTE); - myFilter.addCondition("key1", "LabKey Server Backup", CompareType.NEQ_OR_NULL); - myFilter.addCondition("EventType", "Client API Actions", CompareType.EQUAL); + myFilter.addCondition("SubType", "LabKey Server Backup", CompareType.NEQ_OR_NULL); // Runs query. - ArrayList returnArray = notificationToolkit.getTableMultiRowSingleColumn(currentContainer, currentUser, "auditlog", "audit", myFilter, null, "RowId", null); + ArrayList returnArray = notificationToolkit.getTableMultiRowSingleColumn(currentContainer, currentUser, "auditlog", "Client API Actions", myFilter, null, "RowId", null); this.numClientErrorsSinceYesterday = Long.valueOf(returnArray.size()); // Creates a URL to view number of client errors since yesterday. - this.numClientErrorsSinceYesterdayURLView = notificationToolkit.createQueryURL(currentContainer, "execute", "auditlog", "audit", myFilter); + this.numClientErrorsSinceYesterdayURLView = notificationToolkit.createQueryURL(currentContainer, "execute", "auditlog", "Client API Actions", myFilter); } } } diff --git a/WNPRC_EHR/src/org/labkey/wnprc_ehr/notification/SiteErrorAlertsRevamp.java b/WNPRC_EHR/src/org/labkey/wnprc_ehr/notification/SiteErrorAlertsRevamp.java index 5b88f8d98..7c0783067 100644 --- a/WNPRC_EHR/src/org/labkey/wnprc_ehr/notification/SiteErrorAlertsRevamp.java +++ b/WNPRC_EHR/src/org/labkey/wnprc_ehr/notification/SiteErrorAlertsRevamp.java @@ -56,10 +56,6 @@ public String getCategory() { return "Revamped Notifications"; } - - - - //Message Creation @Override public String getMessageBodyHTML(Container c, User u) { @@ -69,13 +65,13 @@ public String getMessageBodyHTML(Container c, User u) { // Creates filter. SimpleFilter myFilter = new SimpleFilter("date", lastRunDate, CompareType.GTE); - myFilter.addCondition("key1", "LabKeyServer Backup", CompareType.NEQ); + myFilter.addCondition("SubType", "LabKeyServer Backup", CompareType.NEQ); // Gets columns to retrieve. String[] targetColumns = new String[]{"id"}; // Runs query. - ArrayList> returnArray = notificationToolkit.getTableMultiRowMultiColumnWithFieldKeys(c, u, "auditlog", "audit", myFilter, null, targetColumns); + ArrayList> returnArray = notificationToolkit.getTableMultiRowMultiColumnWithFieldKeys(c, u, "auditlog", "Client API Actions", myFilter, null, targetColumns); // Creates URL. - String queryURL = notificationToolkit.createQueryURL(c, "execute", "auditlog", "audit", myFilter); + String queryURL = notificationToolkit.createQueryURL(c, "execute", "auditlog", "Client API Actions", myFilter); // Sends the message only if there are results (otherwise sends notification to admins via emptyNotificationRevamp). if (returnArray.isEmpty()) { @@ -89,7 +85,6 @@ public String getMessageBodyHTML(Container c, User u) { return messageBody.toString(); } } - } diff --git a/docker/ehrcron/scripts/pg_backup/lkServerBackup.pl b/docker/ehrcron/scripts/pg_backup/lkServerBackup.pl index 705342ab7..1ab7b92e2 100644 --- a/docker/ehrcron/scripts/pg_backup/lkServerBackup.pl +++ b/docker/ehrcron/scripts/pg_backup/lkServerBackup.pl @@ -508,7 +508,7 @@ sub lk_log { -queryName => "Client API Actions", -rows => [ { - "Key1" => "LabKey Server Backup", + "SubType" => "LabKey Server Backup", "Comment" => $status, "Date" => $date } ]