added non-degraded disk status for mdstat
This commit is contained in:
parent
c0e8f998a7
commit
9b62ec2149
1 changed files with 5 additions and 8 deletions
13
san.py
13
san.py
|
@ -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)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue