diff --git a/roles/base/files/node-exporter-scripts/smartmon.py b/roles/base/files/node-exporter-scripts/smartmon.py index 97445ab88039f3ad61a4b53cac075c37b4b06afe..5aec62f42fa5d2824947b08a5e46c20a615def4b 100644 --- a/roles/base/files/node-exporter-scripts/smartmon.py +++ b/roles/base/files/node-exporter-scripts/smartmon.py @@ -6,9 +6,12 @@ import datetime import decimal import itertools import re +import os import shlex import subprocess +GUARD_FILE = '/etc/smartmon.disable' + device_info_re = re.compile(r'^(?P<k>[^:]+?)(?:(?:\sis|):)\s*(?P<v>.*)$') ata_error_count_re = re.compile( @@ -386,6 +389,10 @@ def collect_disks_smart_metrics(): def main(): + # Guard file to stop this automation in an emergency. + if os.path.exists(GUARD_FILE): + sys.exit(0) + version_metric = Metric('smartctl_version', { 'version': smart_ctl_version() }, True)