mirror of
https://github.com/nicolargo/glances.git
synced 2025-01-03 15:15:02 +03:00
Add email action for space trigger critical
This commit is contained in:
parent
bf1aa0256e
commit
4d032cf798
@ -25,10 +25,40 @@ reached:
|
||||
[fs]
|
||||
warning=70
|
||||
warning_action=echo {{mnt_point}} {{used}}/{{size}} > /tmp/fs.alert
|
||||
|
||||
A last example would be to create a log file
|
||||
containing the total user disk space usage for a device and notify by email each time a space trigger critical is
|
||||
reached:
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[fs]
|
||||
critical=90
|
||||
critical_action_repeat=echo {{device_name}} {{percent}} > /tmp/fs.alert && python /etc/glances/actions.d/fs-critical.py
|
||||
|
||||
Within ``/etc/glances/actions.d/fs-critical.py``:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
import subprocess
|
||||
from requests import get
|
||||
|
||||
fs_alert = open('/tmp/fs.alert', 'r').readline().strip().split(' ')
|
||||
device = fs_alert[0]
|
||||
percent = fs_alert[1]
|
||||
system = subprocess.check_output(['uname', '-rn']).decode('utf-8').strip()
|
||||
ip = get('https://api.ipify.org').text
|
||||
|
||||
body = 'Used user disk space for ' + device + ' is at ' + percent + '%.\nPlease cleanup the filesystem to clear the alert.\nServer: ' + str(system)+ '.\nIP address: ' + ip
|
||||
ps = subprocess.Popen(('echo', '-e', body), stdout=subprocess.PIPE)
|
||||
subprocess.call(['mail', '-s', 'CRITICAL: disk usage above 90%', '-r', 'postmaster@example.com', 'glances@example.com'], stdin=ps.stdout)
|
||||
|
||||
|
||||
|
||||
|
||||
.. note::
|
||||
You can use all the stats for the current plugin. See
|
||||
https://github.com/nicolargo/glances/wiki/The-Glances-2.x-API-How-to
|
||||
https://github.com/nicolargo/glances/wiki/The-Glances-RESTFULL-JSON-API
|
||||
for the stats list.
|
||||
|
||||
It is also possible to repeat action until the end of the alert.
|
||||
|
Loading…
Reference in New Issue
Block a user