Chyuang

Back
Internet Speed Tracker

Internet Speed Tracker

Grafana dashboard for visualizing speedtest results. Based on wolfganghuber/speedtest which uses cron + speedtest-cli to append results to a CSV.

Architecture

cron runs speedtest-cli --csv every 10 mins
CSV file (appended automatically)
Dashboard

Panels

Avg Download / Upload / Ping (stat panels)

"thresholds": {
  "steps": [
    { "value": null, "color": "red" },
    { "value": 10000000, "color": "yellow" },
    { "value": 30000000, "color": "green" }
  ]
}

Values in bps. Green = >30 Mbps, yellow = 10-30 Mbps, red = <10 Mbps.

Download / Upload / Ping over time (timeseries)

"filterByValue": {
  "filters": [{ "fieldName": "download", "config": { "id": "equal", "options": { "value": "NA" }}}],
  "type": "exclude"
}

Plots metric over time. Filters out "NA" rows from failed tests.

Download by server location (bar chart)

"groupBy": {
  "fields": {
    "location": { "operation": "groupby" },
    "download": { "operation": "aggregate", "aggregations": ["mean"] }
  }
}

Groups by server location, shows mean download speed per server.