File: //usr/lib/python2.7/site-packages/lap/check_mtu.py
#!/usr/bin/python
import yaml
import commands as cmd
def __run__(params):
mtu = 9000
timeout = 3
result = []
has_error = False
try:
nfs = []
for linha in open('/etc/mtab').readlines():
if linha[0] != "/" and linha.find("nfs") != -1 and linha.find(":") != -1:
nfs.append(linha.split(":")[0])
if len(nfs) == 0:
check_return(True, "no NFS mount found")
return
for storage in nfs:
status, output = cmd.getstatusoutput( "ping -w %d -c 1 -s %d %s" % (timeout,mtu,storage))
if status != 0:
result.append(storage)
has_error = True
if has_error is False:
return [0, "Check_MTU status=0 OK - %s" % storage]
elif status == 2:
return [1, "Check_MTU status=1 WARNING - %s, check ping permissions" % storage]
else :
return [2, "Check_MTU status=2 CRITICAL - %s" % " ".join(result)]
except Exception, e:
return [2, "Unable to calc => %s" % repr(e)]