https://github.com/geerlingguy/internet-monitoring Skip to content Sign up Sign up * Why GitHub? Features - + Mobile - + Actions - + Codespaces - + Packages - + Security - + Code review - + Project management - + Integrations - + GitHub Sponsors - + Customer stories- * Team * Enterprise * Explore + Explore GitHub - Learn and contribute + Topics - + Collections - + Trending - + Learning Lab - + Open source guides - Connect with others + The ReadME Project - + Events - + Community forum - + GitHub Education - + GitHub Stars program - * Marketplace * Pricing Plans - + Compare plans - + Contact Sales - + Education - [ ] [search-key] * # In this repository All GitHub | Jump to | * No suggested jump to results * # In this repository All GitHub | Jump to | * # In this user All GitHub | Jump to | * # In this repository All GitHub | Jump to | Sign in Sign up Sign up {{ message }} geerlingguy / internet-monitoring forked from maxandersen/internet-monitoring * Notifications * Star 379 * Fork 114 Monitor your network and internet speed with Docker & Prometheus 379 stars 114 forks Star Notifications * Code * Issues 1 * Pull requests 0 * Actions * Projects 0 * Security * Insights More * Code * Issues * Pull requests * Actions * Projects * Security * Insights master Switch branches/tags [ ] Branches Tags Nothing to show {{ refName }} default View all branches Nothing to show {{ refName }} default View all tags 2 branches 1 tag Go to file Code Clone HTTPS GitHub CLI [https://github.com/g] Use Git or checkout with SVN using the web URL. [gh repo clone geerli] Work fast with our official CLI. Learn more. * Open with GitHub Desktop * Download ZIP Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Go back Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Go back Launching Xcode If nothing happens, download Xcode and try again. Go back Launching Visual Studio If nothing happens, download the GitHub extension for Visual Studio and try again. Go back This branch is 13 commits ahead of maxandersen:master. Pull request Compare Latest commit @geerlingguy geerlingguy Use discrete instead of spectrum for uptime graph. ... 59508d5 Apr 10, 2021 Use discrete instead of spectrum for uptime graph. 59508d5 Git stats * 69 commits Files Permalink Failed to load latest commit information. Type Name Latest commit message Commit time blackbox/config better docs and default dashboard Oct 1, 2018 grafana Use discrete instead of spectrum for uptime graph. Apr 10, 2021 images cleanup docs and images Oct 1, 2018 prometheus Update default speedtest interval to 30m to avoid suprise huge data u... Apr 4, 2021 .travis.yml added Travis testing script Aug 2, 2017 Grafana-Org-Stats.json Added Grafana Org Stats Mar 8, 2017 README.md Update default speedtest interval to 30m to avoid suprise huge data u... Apr 4, 2021 docker-compose.yml Update docker-compose to always restart all the containers. Mar 24, 2021 View code A Docker Stack which Monitors your home network Pre-requisites Quick Start Configuration Interesting urls Thanks and a disclaimer README.md A Docker Stack which Monitors your home network This repository is a fork from maxandersen/internet-monitoring, tailored for use on a Raspberry Pi. It has only been tested on a Raspberry Pi 4 running Pi OS 64-bit beta. Here's a quick start to stand-up a Docker Prometheus stack containing Prometheus, Grafana with blackbox-exporter and speedtest-exporter to collect and graph home network connections and speed. Pre-requisites Before we get started installing the Prometheus stack. Ensure you install the latest version of docker and docker-compose on your Docker host machine. This has been tested with Docker for Mac and Synology and it works. Quick Start git clone https://github.com/geerlingguy/internet-monitoring cd internet-monitoring docker-compose up Goto http://localhost:3030/d/o9mIe_Aik/internet-connection (change localhost to your docker host ip/name). Configuration To change what hosts you ping you change the targets section in / prometheus/pinghosts.yaml file. For speedtest the only relevant configuration is how often you want the check to happen. It is at 30 minutes by default which might be too much if you have limit on downloads. This is changed by editing scrape_interval under speedtest in /prometheus/prometheus.yml. Once configurations are done let's start it up. From the /prometheus project directory run the following command: $ docker-compose up -d That's it. docker-compose builds the entire Grafana and Prometheus stack automagically. The Grafana Dashboard is now accessible via: http://:3030 for example http://localhost:3030 username - admin password - wonka (Password is stored in the config.monitoring env file) The DataSource and Dashboard for Grafana are automatically provisioned. If all works it should be available at http://localhost:3030/d/ o9mIe_Aik/internet-connection - if no data shows up try change the timeduration to something smaller. [dashboard] Interesting urls Note: replace localhost with your docker host ip/name if not running this locally. http://localhost:9090/targets shows status of monitored targets as seen from prometheus - in this case which hosts being pinged and speedtest. note: speedtest will take a while before it shows as UP as it takes about 30s to respond. http://localhost:9090/graph?g0.expr=probe_http_status_code&g0.tab=1 shows prometheus value for probe_http_status_code for each host. You can edit/play with additional values. Useful to check everything is okey in prometheus (in case Grafana is not showing the data you expect). http://localhost:9115 blackbox exporter endpoint. Lets you see what have failed/succeded. http://localhost:9798/metrics speedtest exporter endpoint. Does take about 30 seconds to show its result as it runs an actual speedtest when requested. Thanks and a disclaimer Thanks to @vegasbrianc work on making a super easy docker stack for running prometheus and grafana. I also want to disclaim that Prometheus aren't really (currently) intended for this kind of blackbox/external monitoring and this setup is not in anyway secured. Thus only use this for inspiration and do not blame me if someone hacks this and figure out what your real internet speed is :) About Monitor your network and internet speed with Docker & Prometheus Resources Readme Releases 1 tags Packages 0 No packages published * (c) 2021 GitHub, Inc. * Terms * Privacy * Security * Status * Docs * Contact GitHub * Pricing * API * Training * Blog * About You can't perform that action at this time. You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.