Git Product home page Git Product logo

broadband's Introduction

Broadband (go)


The go Broadband app / code was writen to satisfy my own requirements to monitor my internet speed regularly

You can run this app/code as is and it will return the output on the screen or you have an option to store the data into a PostgreSQL database, with minor changes you can use other DBs like MySQL & SQLite but I have only included a config and tested on PostgreSQL

Output Example:

WanIP: 123.123.123.123, Latency: 0.013298, Download: 22.330900, Upload: 6.632200, (Manchester (United Kingdom) by Vodafone UK)

PostgreSQL Table:

CREATE TABLE IF NOT EXISTS public.broadband
(
    id SERIAL PRIMARY KEY,
    created timestamp without time zone NOT NULL DEFAULT now(),
    address character varying(32),  
    latency DOUBLE PRECISION,
    downloadspeed DOUBLE PRECISION,
    uploadspeed DOUBLE PRECISION,
    isp character varying(256)
)

To be able to store the data into your database you will need to create the above tables, add the details in the config and set SaveToDB to true!

Config Example:

{
    "DB_HOST":      [""],
    "DB_PORT":      [""],
    "DB_USER":      [""],
    "DB_PASS":      [""],
    "DB_NAME":      [""],
    "TB_NAME":      [""],
    "Verbose":      [true],
    "SaveToDB":     [false]
}

You can run by downloading the source code and execute the $./run.sh script you can also run it like this $ go run main.go or you can compile the source code into a binary like this $ go build -o broadband-$(uname)-$(uname -m) *.go

INFO: Rename / copy the conf-template.json into conf.json in the same folder.

In the future I may add to run this as a service, add a graphic representation of the collected data, but this is just an initial idea for my current requirements.

broadband's People

Contributors

gcclinux avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.