added non-degraded disk status for mdstat

This commit is contained in:
Nicholas St. Germain 2018-02-12 17:32:52 -06:00
parent c0e8f998a7
commit 9b62ec2149

13
san.py
View file

@ -1,9 +1,8 @@
import subprocess
import requests import requests
import re
import psutil import psutil
import mdstat
from datetime import datetime, timezone from datetime import datetime, timezone, timedelta
from influxdb import InfluxDBClient from influxdb import InfluxDBClient
@ -12,23 +11,22 @@ from requests.packages.urllib3.exceptions import InsecureRequestWarning
# noinspection PyUnresolvedReferences # noinspection PyUnresolvedReferences
requests.packages.urllib3.disable_warnings(InsecureRequestWarning) requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
current_time = datetime.now(timezone.utc).astimezone().isoformat()
raid6 = psutil.disk_usage('/mnt') raid6 = psutil.disk_usage('/mnt')
influx_payload = [ influx_payload = [
{ {
"measurement": "Storage Servers", "measurement": "Storage Servers",
"tags": { "tags": {
"server": "SAN3" "server": "SAN2"
}, },
"time": current_time, "time": datetime.now(timezone.utc).astimezone().isoformat(),
"fields": { "fields": {
"Name": '/mnt', "Name": '/mnt',
"bytes Used": raid6.used, "bytes Used": raid6.used,
"bytes Free": raid6.free, "bytes Free": raid6.free,
"bytes Total": raid6.total, "bytes Total": raid6.total,
"Utilization": raid6.percent, "Utilization": raid6.percent,
"Non Degraded Disks": mdstat.parse()['devices']['md127']['status']['raid_disks'] / mdstat.parse()['devices']['md127']['status']['non_degraded_disks'] * 100,
"IO_Wait": psutil.cpu_times_percent().iowait "IO_Wait": psutil.cpu_times_percent().iowait
} }
} }
@ -36,4 +34,3 @@ influx_payload = [
influx = InfluxDBClient('grafana.domain.tld', 8086, 'root', 'root', 'storage_server') influx = InfluxDBClient('grafana.domain.tld', 8086, 'root', 'root', 'storage_server')
influx.write_points(influx_payload) influx.write_points(influx_payload)