Skip to content

Zabbix template to monitoring internet bandwidth via the SpeedtestTracker API.

License

Notifications You must be signed in to change notification settings

databloat/zabbix-template-speedtest-tracker

Repository files navigation

Zabbix Template for SpeedtestTracker

This Zabbix template allows monitoring of internet bandwidth via the SpeedtestTracker API. It uses the SpeedtestTracker API to collect download, upload, and ping metrics, and visualizes them directly in Zabbix. Perfect for network monitoring and performance analysis.

💬 Feedback & Issues

Feedback, suggestions, and issue reports are always welcome — feel free to open an issue or contact me directly.

Screenshots

image

How to Setup

  1. Import the Zabbix Template

    • Go to your Zabbix frontend and import the provided template.
  2. Create an API Token in SpeedtestTracker

    • Open the SpeedtestTracker WebUI.
    • Navigate to Settings -> API Tokens -> Create Token.
    • Set the Abilities to results:read only.
    • Copy the generated token and save it securely.
  3. Create a Host in Zabbix

    • Go to Configuration -> Hosts -> Create host.
    • Add two macros:
      • {$SPEEDTEST_TOKEN} → Paste the token from the previous step.
      • {$WEB.URL} → Enter your SpeedtestTracker URL or IP (e.g., speedtest.domain.local).
  4. Assign the Template

    • Link the imported SpeedtestTracker template to your host.
  5. Done!

    • Zabbix will now start monitoring your internet speed via the SpeedtestTracker API.

Requirements

  • Zabbix Server version 7.0 LTS or higher

📦 Zabbix Items Overview

Name Key Triggers Description
Speedtest API Result speedtest.api 0 Main item that retrieves the latest Speedtest result via the API.
⬥ Download Speed speedtest.download 0 Dependent item that extracts the download speed (Mbps) from the API result.
⬥ Upload Speed speedtest.upload 0 Dependent item that extracts the upload speed (Mbps) from the API result.
⬥ Ping speedtest.ping 0 Dependent item that extracts the ping (ms) from the API result.
⬥ Last Speedtest Status speedtest.status 1 Dependent item that extracts the last test status (completed, running or failed) from the API result.

🚨 Zabbix Trigger Overview

Severity Name Expression
Warning Latest Speedtest Result: {ITEM.VALUE} last(/Speedtest Tracker API/speedtest.status)="failed"

About

Zabbix template to monitoring internet bandwidth via the SpeedtestTracker API.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published