Skip to content
Snippets Groups Projects
Commit e7bef525 authored by Will Storer's avatar Will Storer
Browse files

initial commit

parents
Branches
No related tags found
No related merge requests found
FROM debian:latest
RUN apt-get update && apt-get install -y \
python-pip
RUN mkdir /app
COPY run-speedtest.py /app/
RUN pip install speedtest-cli
RUN pip install prometheus-client
EXPOSE 9104
ENTRYPOINT ["/app/run-speedtest.py"]
Makefile 0 → 100644
IMAGE_NAME = registry:5000/speedtest:0.1
build-image:
docker build -t $(IMAGE_NAME) .
push-image:
docker push $(IMAGE_NAME)
run-image:
docker run --rm -it --net host $(IMAGE_NAME)
run-shell:
docker run --rm -it --net host $(IMAGE_NAME) /bin/bash
#!/usr/bin/python
import speedtest
import time
from prometheus_client import start_http_server, Summary, Gauge
servers = []
# If you want to test against a specific server
# servers = [1234]
s = speedtest.Speedtest()
#results_dict = s.results.dict()
#print results_dict
g_download = Gauge('download_speed', 'Download speed')
g_upload = Gauge('upload_speed', 'Upload speed')
def process_request(t):
s.get_servers(servers)
s.get_best_server()
s.download()
s.upload()
results_dict = s.results.dict()
g_download.set(results_dict["download"])
g_upload.set(results_dict["upload"])
time.sleep(t)
if __name__ == '__main__':
# Start up the server to expose the metrics.
start_http_server(9104)
# Generate some requests.
while True:
process_request(60)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment