Advertisement
pavolk

zozujJsonPublic

Dec 10th, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.10 KB | None | 0 0
  1. #!/usr/bin/python
  2.  
  3. import json
  4. import subprocess
  5.  
  6. def getProcessOutput(cmd):
  7.     process = subprocess.Popen(
  8.         cmd,
  9.         shell=True,
  10.         stdout=subprocess.PIPE)
  11.     process.wait()
  12.     data, err = process.communicate()
  13.     if not process.returncode:
  14.         return data.decode('utf-8')
  15.     else:
  16.         print("Error:", err)
  17.     return ""
  18.  
  19. # grab the output
  20. cmd = "hustodemonsky komand"
  21. output = getProcessOutput(cmd, shell=True,  stdout=subprocess.PIPE)
  22. data = json.loads(output)
  23.  
  24. # sample output
  25. #{
  26. #   "data": {[
  27. #       {
  28. #           "id": "1",
  29. #           "count": 12098
  30. #       },
  31. #       {
  32. #           "id": "2",
  33. #           "count": "928347"
  34. #       },
  35. #       {
  36. #           "id": "3",
  37. #           "count": "45987"
  38. #       },
  39. #       { dalsie id, ktore ma nezaujimaju }
  40. #   ]}
  41. #}
  42. result = ""
  43. exitcode = 0
  44. # zosrotuj vystup
  45. for value in data:
  46.     if value.id == "1":
  47.         if value.count >= 10000:
  48.             result = "OK"
  49.         else if value.count >= 5000:
  50.             result = "WARNING"
  51.             if exitcode < 1 :
  52.                 exitcode += 1
  53.         else:
  54.             result = "CRITICAL"
  55.             if exitcode < 2 :
  56.                 exitcode += 1
  57.         result = result + ": Prvy=" + value.count + ", ")
  58.     else if value.id == "2":
  59.         if value.count >= 800000:
  60.             result = "OK"
  61.         else if value.count >= 500000:
  62.             result = "WARNING"
  63.             if exitcode < 1 :
  64.                 exitcode += 1
  65.         else:
  66.             result = "CRITICAL"
  67.             if exitcode < 2 :
  68.                 exitcode += 1
  69.         result = result + ": Druhy=" + value.count + ", ")
  70.     else if value.id == "3":
  71.         if value.count >= 50000:
  72.             result = "OK"
  73.         else if value.count >= 40000:
  74.             result = "WARNING"
  75.             if exitcode < 1 :
  76.                 exitcode += 1
  77.         else:
  78.             result = "CRITICAL"
  79.             if exitcode < 2 :
  80.                 exitcode += 1
  81.         result = result + ": Treti=" + value.count + ", ")
  82.     else:
  83.         pass
  84.        
  85. print(result)
  86. return exitcode
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement