pingtest/logpingresult.py

31 lines
905 B
Python
Raw Normal View History

2024-11-26 12:27:27 -06:00
#/usr/bin/python3
import os
import subprocess as sp
import requests
import time
def addinfluxrecord(ip,pingtime):
data = f"PingTime,IP={ip} value={pingtime}"
print(data)
headers = {'Content-Type': 'application/x-www-form-urlencoded'}
response = requests.post(
influxuri,
data=data,
headers=headers,
auth=(infdbuser,infdbpass),
)
return response
infdbuser = os.environ["INFLUX_USER"]
infdbpass = os.environ["INFLUX_PASSWORD"]
influxuri = os.environ["INFLUX_URI"]
pingaddresses = os.environ["PING_HOSTS"].split(",")
while(True):
for ip in pingaddresses:
response = sp.getstatusoutput(f"ping -c 1 {ip}")
if(response[0]!=0):
time=2000
else:
myresp = response[1].split("\n")[1].split(' ')[6].split('=')[1]
result = addinfluxrecord(ip,myresp)
print(result)
time.sleep(5)