diff --git a/roles/float-base/files/node-exporter-scripts/smartmon.py b/roles/float-base/files/node-exporter-scripts/smartmon.py
index 1708e873d1e66be674faa3529ceaac1ca244e080..f27915da8f6b49aedfd6f7cb7ad7d0b874111741 100644
--- a/roles/float-base/files/node-exporter-scripts/smartmon.py
+++ b/roles/float-base/files/node-exporter-scripts/smartmon.py
@@ -193,7 +193,8 @@ def smartd_devices(config='/etc/smartd.conf'):
 
 def collect_self_test_status(device, data):
     """Extract SMART self-test status from logs."""
-    if 'ata_smart_self_test_log' not in data:
+    if 'ata_smart_self_test_log' not in data or \
+       'table' not in data['ata_smart_self_test_log']['standard']:
         return
 
     # Attempt to extract the most recent self test status by type.