[add] #1 Überwachung von Speicherplatzverbrauch

This commit is contained in:
Christian Neubauer 2023-03-03 14:51:22 +01:00
parent ac7c936325
commit 9f9464d13b
6 changed files with 15 additions and 14 deletions

View file

@ -8,26 +8,23 @@
"annoy": false, "annoy": false,
"schedule": { "schedule": {
"regular_interval": 15, "regular_interval": 15,
"attentive_interval": 5 "attentive_interval": 1
}, },
"notifications": [ "notifications": [
{ {
"kind": "console", "kind": "console",
"parameters": { "parameters": {
} }
},
{
"kind": "libnotify",
"parameters": {
}
} }
], ],
"kind": "file_state", "kind": "generic_remote",
"parameters": { "parameters": {
"path": "/tmp/test", "host" : "iks-vvd-cn.greenscale.lan",
"exist": true, "user" : "root",
"age_threshold": 60, "ssh_key" : "/home/christiann/.ssh/id_ed25519.pub",
"size_threshold": 1 "mount_point" : "/",
"threshold" : 95,
"strict" : false
} }
} }
] ]

View file

@ -21,5 +21,6 @@
"checks.http_request.header_value_mismatch": "Header-Wert für Schlüssel '{{key}}' '{{value_actual}}' stimmt nicht mit erwartetem Wert {{value_expected}} überein", "checks.http_request.header_value_mismatch": "Header-Wert für Schlüssel '{{key}}' '{{value_actual}}' stimmt nicht mit erwartetem Wert {{value_expected}} überein",
"checks.http_request.body_misses_part": "Rumpf enthält nicht den erwarteten Teil '{{part}}'", "checks.http_request.body_misses_part": "Rumpf enthält nicht den erwarteten Teil '{{part}}'",
"misc.state_file_path": "Pfad zur Zustands-Datei", "misc.state_file_path": "Pfad zur Zustands-Datei",
"misc.check_procedure_failed": "Prüfungs-Prozedur fehlgeschlagen" "misc.check_procedure_failed": "Prüfungs-Prozedur fehlgeschlagen",
"checks.generic_remote.overflow": "Festplatte fast voll"
} }

View file

@ -21,5 +21,6 @@
"checks.http_request.header_value_mismatch": "actual header value for key '{{key}}' '{{value_actual}}' and does not match the expected value {{value_expected}}", "checks.http_request.header_value_mismatch": "actual header value for key '{{key}}' '{{value_actual}}' and does not match the expected value {{value_expected}}",
"checks.http_request.body_misses_part": "body does not contain the expected part '{{part}}'", "checks.http_request.body_misses_part": "body does not contain the expected part '{{part}}'",
"misc.state_file_path": "state file path", "misc.state_file_path": "state file path",
"misc.check_procedure_failed": "check procedure failed" "misc.check_procedure_failed": "check procedure failed",
"checks.generic_remote.overflow": "harddisk full"
} }

View file

@ -14,7 +14,7 @@ def file_write(path, content):
def string_coin(template, arguments): def string_coin(template, arguments):
result = template result = template
for (key, value, ) in arguments.items(): for (key, value, ) in arguments.items():
result = result.replace("{{%s}}" % key, value) result = result.replace("{{%s}}" % key, str(value))
return result return result

View file

@ -107,6 +107,7 @@ def main():
"script": implementation_check_kind_script(), "script": implementation_check_kind_script(),
"file_state": implementation_check_kind_file_state(), "file_state": implementation_check_kind_file_state(),
"http_request": implementation_check_kind_http_request(), "http_request": implementation_check_kind_http_request(),
"generic_remote" : implementation_check_kind_generic_remote()
} }
### load notification channel implementations ### load notification channel implementations

View file

@ -44,6 +44,7 @@ def main():
_os.path.join(dir_source, "logic", "checks", "script.py"), _os.path.join(dir_source, "logic", "checks", "script.py"),
_os.path.join(dir_source, "logic", "checks", "file_state.py"), _os.path.join(dir_source, "logic", "checks", "file_state.py"),
_os.path.join(dir_source, "logic", "checks", "http_request.py"), _os.path.join(dir_source, "logic", "checks", "http_request.py"),
_os.path.join(dir_source, "logic", "checks", "generic_remote.py"),
_os.path.join(dir_source, "logic", "channels", "_interface.py"), _os.path.join(dir_source, "logic", "channels", "_interface.py"),
_os.path.join(dir_source, "logic", "channels", "console.py"), _os.path.join(dir_source, "logic", "channels", "console.py"),
_os.path.join(dir_source, "logic", "channels", "email.py"), _os.path.join(dir_source, "logic", "channels", "email.py"),