EVERYTHING!
This commit is contained in:
33
speedtest.py
Executable file
33
speedtest.py
Executable file
@@ -0,0 +1,33 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import re
|
||||
import subprocess
|
||||
from influxdb import InfluxDBClient
|
||||
import json
|
||||
|
||||
response = subprocess.Popen('/home/pi/speedtest/ookla_bin/speedtest -b --progress=no -f json-pretty', shell=True, stdout=subprocess.PIPE).stdout.read().decode('utf-8')
|
||||
|
||||
json_data = json.loads(response)
|
||||
|
||||
ping = round(json_data["ping"]["latency"], 2)
|
||||
upload = round(json_data["upload"]["bytes"]/1024/1024, 2)
|
||||
download = round(json_data["download"]["bytes"]/1024/1024, 2)
|
||||
|
||||
speed_data = [
|
||||
{
|
||||
"measurement" : "internet_speed",
|
||||
"tags" : {
|
||||
"host": "home"
|
||||
},
|
||||
"fields" : {
|
||||
"download": download,
|
||||
"upload": upload,
|
||||
"ping": ping
|
||||
}
|
||||
}
|
||||
]
|
||||
client = InfluxDBClient("192.168.178.25", 8086, 'no', 'credentials', 'here')
|
||||
|
||||
client.write_points(speed_data)
|
||||
|
||||
print(f"Ping: {ping}; Download: {download}; Upload: {upload}")
|
||||
Reference in New Issue
Block a user