{"id":13587489,"url":"https://github.com/TristanBrotherton/netcheck","last_synced_at":"2025-04-07T22:31:20.622Z","repository":{"id":37703719,"uuid":"231474975","full_name":"TristanBrotherton/netcheck","owner":"TristanBrotherton","description":"A shell script to check and log when your internet connection goes down. Pull requests are welcome.","archived":false,"fork":false,"pushed_at":"2023-09-18T17:04:24.000Z","size":2231,"stargazers_count":247,"open_issues_count":4,"forks_count":43,"subscribers_count":11,"default_branch":"master","last_synced_at":"2024-04-18T04:04:25.560Z","etag":null,"topics":["internet-connection","isp","monitoring","monitoring-tool","netcheck","networking","ping","speedtest","uptime","uptime-monitor"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TristanBrotherton.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-01-02T23:16:52.000Z","updated_at":"2024-08-01T16:33:32.115Z","dependencies_parsed_at":"2024-08-01T16:33:31.698Z","dependency_job_id":"68e1dbd5-eedf-4516-8d11-64f6296d3bda","html_url":"https://github.com/TristanBrotherton/netcheck","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TristanBrotherton%2Fnetcheck","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TristanBrotherton%2Fnetcheck/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TristanBrotherton%2Fnetcheck/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TristanBrotherton%2Fnetcheck/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TristanBrotherton","download_url":"https://codeload.github.com/TristanBrotherton/netcheck/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247740734,"owners_count":20988259,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["internet-connection","isp","monitoring","monitoring-tool","netcheck","networking","ping","speedtest","uptime","uptime-monitor"],"created_at":"2024-08-01T15:06:14.095Z","updated_at":"2025-04-07T22:31:19.807Z","avatar_url":"https://github.com/TristanBrotherton.png","language":"Shell","funding_links":[],"categories":["Shell"],"sub_categories":[],"readme":"# Netcheck\nA shellscript to check and log when your internet connection goes down. Netcheck checks for internet connectivity\nand if its interupted, writes a log containing the time of disconnect, and length of time disconnected.\nOnce it reconnects it will log the reconnected internet speed and continue monitoring again.\n\nNetcheck also include an optional web interface for viewing your connection logs remotely from a web browser.\nYou can use a service such as NGROK to allow you to see the web interface outside of your network.\n\n ## PRs Welcome! \n If Necheck is mising something you'd like to have, feel free to submit a PR. \n\n## Installation\n\n    git clone https://github.com/TristanBrotherton/netcheck.git\n    cd netcheck\n    chmod +x netcheck.sh\n    ./netcheck.sh\n    \n### CLI Interface\n![Netcheck CLI interface](netcheck.png)\n\n### Web Interface\n![Netcheck CLI interface](netcheck_remote.png)\n\n## Options\n    netcheck.sh -h                                           Display this message\n    netcheck.sh -f path/my_log_file.log          Specify log file and path to use\n    netcheck.sh -s                                 Disable speedtest on reconnect\n    netcheck.sh -c                Check connection ever (n) seconds. Default is 5\n    netcheck.sh -u            URL/Host to check, default is http://www.google.com\n    netcheck.sh -w                                  Enable the remote webinteface\n    netcheck.sh -p                  Specify an optional port for the webinterface\n    netcheck.sh -i                           Install netcheck as a system service\n    netcheck.sh -d path/script            Specify script to execute on disconnect\n    netcheck.sh -r path/script             Specify script to execute on reconnect\n    netcheck.sh -t path/script        Specify script to execute after every check\n    netcheck.sh -e                      Excecute speedtest every connection check\n\n## Run as a service\nYou can optionally run netcheck as a system service. For systems that use \nsystemctl (Linux) you may use its service installation script:\n\n    sudo ./netcheck.sh -i\n\n## Scripts for disconnect/reconnect events\nYou can optionally define actions to be executed upon disconnect or reconnect.\nTo do so you may use the `-d` and `-r` options. \n\nTwo sample `bash` scripts making use of the `espeak-ng` text-to-speech utility are provided\nunder the `sample-scripts` to showcase how these options can be used:\n\n    ./netcheck.sh -d sample-scripts/disconnected.sh -r sample-scripts/reconnected.sh\n\n## Script to display link down events\nA github-like activity chart displaying link down events can be displayed with:\n\n    ./internet_status_chart.sh\n\nTo load custom log file use the -f option:\n\n    ./internet_status_chart.sh -f path/my_log_file.log\n\n![Link down events graph](linkdown_graph.png)\n\n(The script is adapted from [https://github.com/aaossa/git-activity])\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTristanBrotherton%2Fnetcheck","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FTristanBrotherton%2Fnetcheck","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTristanBrotherton%2Fnetcheck/lists"}