Global uptime monitoring with Upptime and Globalping

We've got some great news to share with you today! We're happy to announce the native integration of Globalping into the uptime monitoring tool, Upptime.
In this blog post, you'll learn more about this integration, what possibilities it brings to your table as a current or future Upptime user, and how you can benefit from using Globaping to get a global view of your services' availability and performance.
Why use Globalping with Upptime
First off, if you're not yet familiar with the tools:
- Upptime is a free and open-source uptime monitor and status page solution. It utilizes GitHub Actions to run checks, GitHub Issues for incident tracking, and GitHub Pages for hosting status pages.
- Globalping is an open-source network measurement platform. It relies on a globally distributed network of community-hosted probes, allowing anyone to run network tests, such as ping and HTTP requests, from virtually any location worldwide.
Before, Upptime users could only perform uptime checks through GitHub Actions runners or self-hosted alternatives. While effective, this approach limited the locations from which checks could run.
Now, with Globalping integrated within Upptime, users can define the origin of their checks – whether it's a geographical location, ASN, ISP, or even a cloud region.
How running Upptime checks with Globalping can improve your monitoring:
- Run checks from regions that are especially important to your service or known to have network issues. This allows you to pinpoint localized problems more quickly.
- Understand how users experience your website or service from different parts of the world. This can help you identify regional latency or accessibility issues that could impact user experience.
- Instead of just running checks from a cloud provider via GitHub Actions, you can now get results from residential networks, various ISPs, or even your own Globalping probes.
All in all, the Globalping integration can improve the already great Upptime tool, making it even more valuable for anyone who wants an uptime monitor with a global view of network performance and availability.
Getting started with global uptime monitoring
Since Globalping is now a native integration within Upptime, it is always available by default. This means you don't have to set up anything beyond your Upptime configuration.
Let's explore how you can get started using Globalping within your Upptime config:
To use Globalping for a specific site check, add the type: globalping
option to its configuration in your .upptimerc.yml
file.
Next, specify the origin of your check using the `location` option. You can define continents, countries, regions, cities, ASNs, ISPs, and cloud region names (AWS). To specify more precise locations, use the +
operator. For example, amazon+germany
would target a probe in Amazon's network in Germany, or comcast+california
would pick probes within Comcast's network in California.
Here's an example:
sites:
- name: Europe check
url: https://api.myservice.com
type: globalping
location: europe
Authentication and API limits
By default, unauthenticated Globalping checks through Upptime have a limit of 250 tests per hour per IP address. Since GitHub Actions runners share IP addresses among many users, you may reach this limit sooner than expected.
To avoid this, we strongly recommend that you authenticate your Globalping-Upptime checks. By signing up for the Globalping Dashboard, you unlock a higher hourly limit of 500 and make sure that your checks only count against your Globalping API limit.
To authenticate:
- Go to the Globalping Dashboard and create a free account
- Once logged in, navigate to "Tokens" to generate an API token
- In your Upptime setup's GitHub repository, navigate to Settings > Secrets and Variables > Actions. Here, add your API token as a new repository secret with the name
GLOBALPING_TOKEN
.
Use cases and examples
Finally, let's explore some practical applications that demonstrate how you can use Globalping and Upptime to get global insights into your service's performance and availability.
Broad regional uptime checks
Let's say you want to check if your website or service is accessible and responsive across an entire continent, such as Europe.
For this HTTP GET check, we'll use the `location` option to define the origin of the check, allowing you to quickly confirm whether your site is reachable.
sites:
- name: Check website in Europe
url: https://my-service.com/health-check
type: globalping
location: europe
Checking performance from a specific cloud provider in a region
Imagine hosting your service on AWS and having a large number of users in Germany. Thus, you want to specifically monitor your service's performance and availability from AWS in Germany to identify performance problems or routing issues that may happen there. To achieve this, we're using the `+` operator to combine filters for more precise probe selection:
sites:
- name: AWS Germany performance
url: https://www.yourwebsite.com
type: globalping
location: amazon+germany
Ping a service behind a specific ISP
To determine whether users connecting to your service through a specific ISP are experiencing any issues, you can check the availability of your service by performing a ping test from that network.
check: "tcp-ping"
in Upptime without type: globalping
, it performs a ping with TCP. However, if you specify type: globalping
, Globalping will run the check for Upptime and execute an ICMP ping.sites:
- name: Monitor Comcast in CA
check: "tcp-ping"
url: yourdomain.com
type: globalping
location: comcast+california
Conclusion
With the integration of Globalping into Upptime, we aim to provide Upptime users with greater flexibility when it comes to the location from which they can run their checks. Users are no longer restricted to specific locations and instead can perform targeted Upptime checks from virtually anywhere in the world.
Head over to the Upptime website to check the documentation on the Globalping integration to get started!