https://github.com/statping/statping Skip to content Sign up * Why GitHub? Features - + Mobile - + Actions - + Codespaces - + Packages - + Security - + Code review - + Issues - + 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 - [ ] * # In this repository All GitHub | Jump to | * No suggested jump to results * # In this repository All GitHub | Jump to | * # In this organization All GitHub | Jump to | * # In this repository All GitHub | Jump to | Sign in Sign up {{ message }} statping / statping Public * * Notifications * Star 5.5k * Fork 422 * Status Page for monitoring your websites and applications with beautiful graphs, analytics, and plugins. Run on any type of environment. demo.statping.com GPL-3.0 License 5.5k stars 422 forks Star Notifications * Code * Issues 16 * Pull requests 41 * Actions * Projects 3 * Wiki * Security * Insights More * Code * Issues * Pull requests * Actions * Projects * Wiki * Security * Insights dev Switch branches/tags [ ] Branches Tags Could not load branches Nothing to show {{ refName }} default View all branches Could not load tags Nothing to show {{ refName }} default View all tags 23 branches 205 tags Code Latest commit @hunterlong hunterlong Merge pull request #895 from britannic/ Improve-Web-Browser-Emulation ... aa51554 Apr 1, 2021 Merge pull request #895 from britannic/Improve-Web-Browser-Emulation Improve web browser emulation aa51554 Git stats * 1,860 commits Files Permalink Failed to load latest commit information. Type Name Latest commit message Commit time .github removed source.tar.gz file from repo, re-adding go:generate functions... Dec 18, 2020 .vscode Revert template placeholders Oct 12, 2020 cmd frontend change, oauth fixes Sep 18, 2020 database read_only DB env, DSN env Sep 16, 2020 dev github actions refactor, removed cache API endpoints from postman Dec 15, 2020 frontend UI fixes Dec 20, 2020 handlers removed source.tar.gz file from repo, fixed GH actions Dec 20, 2020 notifiers PR merges, version bump, removed internal cache, removed unused http ... Dec 15, 2020 source removed source.tar.gz file from repo, fixed GH actions Dec 20, 2020 types added race condition testing Oct 2, 2020 utils Merge branch 'dev' into Improve-Web-Browser-Emulation Dec 17, 2020 .dockerignore LetsEncrypt SSL cert process with ENVs, JWT token key from API secret... Jul 15, 2020 .gitattributes Update .gitattributes Oct 25, 2019 .gitignore fixed notifier panic Aug 30, 2020 CHANGELOG.md UI fixes Dec 20, 2020 CloudronManifest.json systemctl command Jul 26, 2020 Dockerfile revert docker user Oct 13, 2020 Dockerfile.base revert removed sass Aug 21, 2020 LICENSE package name change Dec 4, 2018 Makefile removed source.tar.gz file from repo, fixed GH actions Dec 20, 2020 README.md Update README.md Jun 19, 2020 app.json assets generate changes Aug 8, 2020 doc.go rename repo, snapcraft Apr 15, 2020 docker-compose.yml Revert template placeholders Oct 12, 2020 go.mod go mod tidy Dec 18, 2020 go.sum go mod tidy Dec 18, 2020 install.sh install script for aarch64 Jul 23, 2020 snapcraft.yaml snapcraft Jul 26, 2020 version.txt UI fixes Dec 20, 2020 View code [ ] Statping - Status Page & Monitoring Server A Future-Proof Status Page No Requirements Lightweight and Fast Mobile App is Gorgeous Run on Any Server Custom SASS Styling Slack, Email, Twilio and more User Created Notifiers Easy to use Dashboard Run on Docker Docker Compose Docker Compose with Automatic SSL Prometheus Exporter Run on EC2 Server Create Security Groups Create EC2 without SSL Create EC2 with Automatic SSL Certification Contributing README.md [68747470733a2f2f73332d75732d776573742d32] Statping - Web and App Status Monitoring for Any Type of Project View Wiki | Demo | iPhone | Android API | Docker | EC2 | Mac | Linux | Windows Statping - Status Page & Monitoring Server An easy to use Status Page for your websites and applications. Statping will automatically fetch the application and render a beautiful status page with tons of features for you to build an even better status page. This Status Page generator allows you to use MySQL, Postgres, or SQLite on multiple operating systems. Master Release GoDoc Slack [6874747073] Docker Pulls [68747470733a2f2f696d672e636a782e696f2f737461] A Future-Proof Status Page Statping strives to remain future-proof and remain intact if a failure is created. Your Statping service should not be running on the same instance you're trying to monitor. If your server crashes your Status Page should still remaining online to notify your users of downtime. [6874747073] (dashboard login is admin, password admin) No Requirements Statping is built in Go Language so all you need is the precompile binary based on your operating system. You won't need to install anything extra once you have the Statping binary installed. You can even run Statping on a Raspberry Pi. [68] [68] [68] [68] [68] [68] [68747470733a2f2f676974696d67732e73332d75732d] Lightweight and Fast Statping is a very lightweight application and is available for Linux, Mac, and Windows. The Docker image is only ~16Mb so you know that this application won't be filling up your hard drive space. The Status binary for all other OS's is ~17Mb at most. [68747470733a2f2f696d672e636a782e696f2f737461] Mobile App is Gorgeous The Statping app is available on the App Store and Google Play for free. The app will allow you to view services, receive notifications when a service is offline, update groups, users, services, messages, and more! Start your own Statping server and then connect it to the app by scanning the QR code in settings. [6874747073] [6874747073] Run on Any Server Whether you're a Docker fan-boy or a AWS EC2 master, Statping gives you multiple options to simply get running. Our Amazon AMI image is only 8Gb and will automatically update to the most stable version of Statping. Running on an EC2 server might be the most cost effective way to host your own Statping Status Page. The server runs on the smallest EC2 instance (t2.nano) AWS has to offer, which only costs around $4.60 USD a month for your dedicated Status Page. Want to run it on your own Docker server? Awesome! Statping has multiple docker-compose.yml files to work with. Statping can automatically create a SSL Certification for your status page. [68747470733a2f2f696d672e636a782e696f2f737461] Custom SASS Styling Statping will allow you to completely customize your Status Page using SASS styling with easy to use variables. The Docker image actually contains a prebuilt SASS binary so you won't even need to setup anything! Slack, Email, Twilio and more Statping includes email notification via SMTP and Slack integration using Incoming Webhook. Insert the webhook URL into the Settings page in Statping and enable the Slack integration. Anytime a service fails, you're channel that you specified on Slack will receive a message. User Created Notifiers View the [Plugin Wiki](https://github.com/statping/statping/wiki/ Statping-Plugins) to see detailed information about Golang Plugins. Statping isn't just another Status Page for your applications, it's a framework that allows you to create your own plugins to interact with every element of your status page. [Notifier's](https://github.com/ statping/statping/wiki/Notifiers) can also be create with only 1 golang file. [68747470733a2f2f696d672e636a782e696f2f7374617475707363322e706e67] [68747470733a2f2f696d672e636a782e696f2f737461] Easy to use Dashboard Having a straight forward dashboard makes Statping that much better. Monitor your websites and applications with a basic HTTP GET request, or add a POST request with your own JSON to post to the endpoint. Run on Docker Use the Statping Docker Image to create a status page in seconds. Checkout the Docker Wiki to view more details on how to get started using Docker. docker run -it -p 8080:8080 statping/statping There are multiple ways to startup a Statping server. You want to make sure Statping is on it's own instance that is not on the same server as the applications you wish to monitor. It doesn't look good when your Status Page goes down, I recommend a small EC2 instance so you can set it, and forget it. Docker Compose In this folder there is a standard docker-compose file that include nginx, postgres, and Statping. docker-compose up -d Docker Compose with Automatic SSL You can automatically start a Statping server with automatic SSL encryption using this docker-compose file. First point your domain's DNS to the Statping server, and then run this docker-compose command with DOMAIN and EMAIL. Email is for letsencrypt services. LETSENCRYPT_HOST=mydomain.com \ LETSENCRYPT_EMAIL=info@mydomain.com \ docker-compose -f docker-compose-ssl.yml up -d Once your instance has started, it will take a moment to get your SSL certificate. Make sure you have a A or CNAME record on your domain that points to the IP/DNS of your server running Statping. Prometheus Exporter Statping includes a Prometheus Exporter so you can have even more monitoring power with your services. The Prometheus exporter can be seen on /metrics, simply create another exporter in your prometheus config. Use your Statping API Secret for the Authorization Bearer header, the /metrics URL is dedicated for Prometheus and requires the correct API Secret has Authorization header. scrape_configs: - job_name: 'statping' bearer_token: 'MY API SECRET HERE' static_configs: - targets: ['statping:8080'] Run on EC2 Server Running Statping on the smallest EC2 server is very quick using the AWS AMI Image. Checkout the AWS Wiki to see a step by step guide on how to get your EC2 Statping service online. Create Security Groups Create the AWS Security Groups with the commands below, Statping will expose port 80 and 443. aws ec2 create-security-group --group-name StatpingPublicHTTP \ --description "Statping HTTP Server on port 80 and 443" # will response back a Group ID. Copy ID and use it for --group-id below. aws ec2 authorize-security-group-ingress \ --group-id sg-7e8b830f --protocol tcp \ --port 80 --cidr 0.0.0.0/0 aws ec2 authorize-security-group-ingress \ --group-id sg-7e8b830f --protocol tcp \ --port 443 --cidr 0.0.0.0/0 Create EC2 without SSL aws ec2 run-instances \ --image-id ami-7be8a103 \ --count 1 --instance-type t2.nano \ --key-name MYKEYHERE \ --security-group-ids sg-7e8b830f Create EC2 with Automatic SSL Certification The AWS-CLI command below will automatically create an EC2 server and create an SSL certificate from Lets Encrypt, for free. wget https://raw.githubusercontent.com/statping/statping/master/servers/ec2-ssl.sh # Edit ec2-ssl.sh and insert your domain you want to use, then run command below. # Use the Security Group ID that you used above for --security-group-ids aws ec2 run-instances \ --user-data file://ec2-ssl.sh \ --image-id ami-7be8a103 \ --count 1 --instance-type t2.nano \ --key-name MYKEYHERE \ --security-group-ids sg-7e8b830f Contributing Statping accepts Push Requests to the dev branch! Feel free to add your own features and notifiers. You probably want to checkout the Notifier Wiki to get a better understanding on how to create your own notification methods for failing/successful services. Testing on Statping will test each function on MySQL, Postgres, and SQLite. I recommend running MySQL and Postgres Docker containers for testing. You can find multiple docker-compose files in the dev directory. Dev Release Go Report Card Build Status Cypress.io tests Docker Pulls GodocCoverage Status [6874747073] About Status Page for monitoring your websites and applications with beautiful graphs, analytics, and plugins. Run on any type of environment. demo.statping.com Topics docker monitoring notifier statuspage prometheus uptime prometheus-exporter website-monitor golang-plugin application-monitoring status-page server-monitor statping Resources Readme License GPL-3.0 License Releases 204 v0.90.74 Latest Dec 18, 2020 + 203 releases Sponsor this project * * patreon patreon.com/statping * open_collective opencollective.com/statping * https://www.nfoservers.com/donate.pl?force_recipient=1&recipient= info%40socialeck.com * https://www.buymeacoffee.com/hunterlong Learn more about GitHub Sponsors Contributors 29 * @hunterlong * @l0nax * @thatInfrastructureGuy * @tufanbarisyildirim * @kaeltis * @craftbyte * @britannic * @zeeZ * @m19c * @oitimon * @arakelian + 18 contributors Languages * Vue 47.5% * Go 45.6% * CSS 2.9% * SCSS 1.9% * Makefile 1.7% * Shell 0.3% * Other 0.1% * (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.