Maintenance

Exclude planned downtime from your check uptime statistics using our newly released maintenance features.

All services need maintenance now and again. Required restarts and reboots usually mean services will be offline while security patches and updates are applied. Many SLA’s and Terms of Service exclude these kinds of activities from your uptime commitments, so disabling your checks during those down times is appropriate.  You also often don’t need notifications for planned events.

NodePing’s maintenance features make it simple to manage your monitoring for planned maintenance. You can create recurring and ad-hoc maintenance that will disable your selected checks for a user-specified duration in minutes.  It will then re-enable the checks after the time you specify, and if any of the checks are still failing at that point–maybe a service failed to restart–you’ll receive the regular ‘down’ notifications.

Some examples where maintenance comes in handy:

  • If your nightly database backup causes your HTTP checks to time out, create a recurring maintenance to disable those HTTP checks for the 3 minutes it takes to do the backup.
  • If your VPS provider sends an emergency maintenance email saying they’re replacing the router and to expect some network interruptions for the next hour, you can set the affected checks in an ad-hoc maintenance that will re-enable them after an hour.

Our new maintenance features will help you maintain your SLAs and alert you right away if your checks fail after maintenance is complete.

Recurring maintenance can be set using a familiar cron expression.

You can find information in our documentation about our maintenance features and the new maintenance API endpoint.

If you don’t yet have a NodePing account, please sign up for a free, 15-day trial and see if our reliable uptime monitoring is a good fit for you.

Check for Silence in Audio Streams

We’re happy to announce a new volume detection feature for audio streams.

Our AUDIO check is great at making sure your stream is up and running but until this update we didn’t have a way to tell if the audio playing was dead air. Silence detection is an important part of providing audio streaming and NodePing can now send you notifications if your Internet radio, podcast, or other audio stream is playing silence instead of your content.

Our volume detection samples 10 seconds of your stream and computes an average decibel level of the audio. If that detected volume level is lower than your configured threshold (-90 to 0 with a default of -45) your AUDIO check will fail and you’ll receive any configured alerts.

Dead air detection takes more resources (CPU, RAM, bandwidth) so the new feature is only available in our “Provider” plan.  If you’re a current NodePing customer and would like to try it out, please let us know and we can provide a temporary free upgrade for you to kick the tires. If you don’t yet have a NodePing account, please sign up for our 15-day, free trial and then go to the billing section and upgrade your trial (still free) to a “Provider” plan to get access to the new feature in your AUDIO checks.

For more information check our AUDIO check documentation or contact us. We’d love to hear what you think of the new feature and what you’d like to see next.

PUSH Checks – Heartbeats and Metrics Monitoring

One of the most requested features we get is the ability to push monitoring results into NodePing. Today, we make good on all those requests and are happy to announce our latest check type, PUSH.

Unlike our other checks, PUSH checks allow your server to push metrics into our system, track the metrics, and receive alerts based on the results. This significantly adds to your ability to monitor services that are not Internet accessible, and monitor additional custom metrics. Our customers running LANs can now get heartbeats and metrics on internal servers like Windows AD controllers. Or, you can monitor metrics that are only relevant to your systems in ways that are specific to your environment. We’ll track and alert on any metric you want to push at us!

Heartbeats and Metrics

PUSH checks are configured to send results on a specific interval and you can configure the check to fail if we haven’t received a pushed result from you. This is the heartbeat functionality.

You can also push us a data payload of metrics with the PUSH check result and configure your check to track those metrics. The check will fail if any configured metric is missing or if the values in the result are outside your configured min/max range.

Metrics are great for keeping an eye on system load, disk free space, or any other service or system metric you can gather on a server and send to us.

PUSH checks are flexible and can be configured to be heartbeat-only, metrics-only, or both.

PUSH Clients

To send us your result (heartbeat or metrics), you’ll need to submit an HTTP POST to NodePing with information about the check and optionally the metrics. Details can be found in our in our PUSH check documentation.

We’ve got fully-functional, open-source clients in Python2, PowerShell, and POSIX script available on our GitHub public repo that have been tested with the following OSes:

  • CentOS 5 (Python2 and POSIX)
  • CentOS 6 (Python2 and POSIX)
  • CentOS 7 (Python2 and POSIX)
  • Debian 9 (Python2 and POSIX)
  • Devuan 2 (Python2 and POSIX)
  • Fedora 28 (Python2 and POSIX)
  • FreeBSD (Python2 and POSIX)
  • OpenBSD 6.3 (Python2 and POSIX)
  • OpenSUSE LEAP 15 (Python2 and POSIX)
  • Raspbian STRETCH (Python2 and POSIX)
  • Ubuntu 14.04 (Python2 and POSIX)
  • Ubuntu 16.04 (Python2 and POSIX)
  • Ubuntu 18.04 (Python2 and POSIX)
  • Windows server 2012 (Python2 and powershell)
  • Windows server 2016 (Python2 and powershell)

Download a client and follow the instructions in the client README.md file to set up your PUSH client.

An example of the default metrics sent from our POSIX client:

OS load: 1 minute, 5 minute, and 15 minute load stats
Memory free in MB
Disk space free in percentage by mount point.

There are also optional modules for Redis, Cassandra, ZFS, iptables, and more.

All our clients are built so you can add your own modules to push additional metrics – the ones you care about. The requirements for pushing metrics into our system are fairly simple, so you can write your own scripts in your preferred language. It just needs to output JSON data with numeric values. You can find the information you need to create your own client modules in our PUSH check documentation and take a look at existing modules for examples.

We encourage pull requests for new modules so if you build something you think others would find useful, please do share.

We’re working on new reports and dashboards to visualize metrics, making the new PUSH check even more useful, so keep an eye out here on the blog for those announcements.

If you aren’t using NodePing yet, you can sign up for a free, 15-day trial and test out our new PUSH checks yourself. We think you’ll love the new functionality along with our rock-solid monitoring and fast/accurate notifications.

Update to TOS and Privacy Policy – NodePing and GDPR

Part of the benefit of being a relatively small distributed company in the Internet cloud age is that we can have a global reach without requiring a lot of infrastructure and overhead. We have customers all over the world, but we have almost no presence anywhere beyond our home office. Our people can work from anywhere with a good Internet connection. Since we work in the cloud, most of our computer systems are in places we have never been. We don’t even handle payment information directly in any of our workplaces. Payment information is passed directly to our payment processors. Working in the cloud age helps all of this work smoothly and safely with very little physical infrastructure required.

The downside of all of that is that our customers are all over the place, including legal jurisdictions all over the world. The regulatory world hasn’t really caught up with the idea of cloud based distributed companies. We want to comply with all applicable requirements, but understanding what requirements apply to us in various locations isn’t always easy.

The GDPR has brought this challenge front and center for us. We do not have any actual presence in any European countries. However, we do have customers in nearly all European countries, and are subject to some data privacy protections where those customers are located. That makes sense, and we want to be good citizens, but as with many other Internet based companies it can be daunting to figure out how the regulations apply to us.

Fortunately for us, the principles established in the GDPR are principles that we were already following in our normal practices. Our customers are businesses and providers of Internet based services, and for the most part we don’t provide services to individual end users. Additionally, our customers manage their own data, have full access to the information in our systems, and we don’t process or use the information they set up in our service beyond what they configure for their own use.

We did find that there were a few requirements related to the GDPR that, while our prior practices were basically already in compliance, weren’t clearly articulated in our Terms of Service or Privacy Policy. So, we’re updating both documents to more clearly set out how our policies and practices address these areas.  The updates will take effect on 2018-05-18

This includes more clearly stating that we are not collecting or processing data beyond what our customers configure to use for their monitoring. We only use contact information in our system to provide the monitoring you configure, and send the notifications you set up in the way you configure them. Our customers can download their own data whenever they want to. Beyond that, we don’t use or process information from our customers.

This is our normal practice, and applies to everyone. We don’t maintain a separate policy for customers in Europe.

Since we are a data processor, and the data is under the control of our customers who are themselves businesses providing services to others, for GDPR purposes we are a Processor rather than a Controller. Since we don’t have a presence in any EU countries, and we provide processing services to controllers in several EU countries, according to the guidelines published by the Article 29 Working Party, the lead supervisory authority will be the supervisory authority that is competent to act as lead for the controller.

If you are a data controller in a European country, or even if you aren’t, you may have questions about our systems that are necessary for you to comply with obligations you have in your location, and for your customers. If you have questions or concerns that aren’t addressed in our updated policies, please let us know.


UPDATE: We have now received our Privacy Shield certification, which required our Privacy Policy to be updated again to meet those requirements.   The most recent changes are aimed specifically at the certification requirements.  As always, you can see our current Privacy Policy and our Terms of Service on our web site.

Cluster Check

Allow me to introduce our newest check type, Cluster.

The Cluster check allows you to group interdependent NodePing checks in order to get notifications and track availability of the group of checks as a whole. You specify a threshold of how many of those checks must be passing in order for the cluster to be considered ‘up’. If the number of those checks passing drops below your configured threshold, the cluster check will fail and send the configured notifications.

We use it to keep an eye on our Cassandra servers but you can use it for any logical group of services that are interdependent. Some other use cases:

  • DNS services – monitor each DNS server with DNS checks and then a cluster check on those DNS checks to get that very important alert when all DNS servers are offline!
  • Web servers – monitor the backend web servers behind your reverse proxy or load balancer to make sure you have enough of them available to handle the traffic.
  • SMTP – monitor your SMTP checks and know that there’s always at least one server available to receive email for your domains.

Cluster checks are available to all NodePing plans today. If you’re not using NodePing yet, please sign up for our 15-day, free trial today.

 

Banana image Designed by Daviles / Freepik

Support for Multiple Public Status Pages

Our public status report is a critical part of keeping your customers informed of your site and service status—which after all is one of the points of monitoring. Our status pages are customizable to your company, and support a custom domain so you can display your status at status.yourdomain.com, or whatever is most applicable to your business.

We have had a public status page as one of our key features for some time.  Now, we’re adding support for multiple status pages on one account. For instance, NodePing has a status report page for our websites at status.nodeping.com, and one specifically for our probe servers at probestatus.nodeping.com.  Business and Provider accounts can optionally set up an SSL cert for their status pages (contact support for info how).

To create a new status report, just log into your account , and go to the “Account Settings” tab, then the “Reporting” subtab. Click “Add new status report” and add as many checks as you want to your new status report.  

We hope you will find this feature just as useful as we do.  We also have several more enhancements for public status pages coming soon.  Let us know what you think at support@nodeping.com, by posting comments here, or by using our Contact Page.

Probe Server Change and Addition [FR,MX]

The following probe server will be changing IP addresses on 2017/09/19:

Paris, France (FR) – FR is changing from (37.59.86.248 / 2001:41d0:a:7a50:5:5:9ab9:a412) to (195.154.167.97 / 2001:bc8:2327:110::10)

We’re also adding a new probe to the Latin America region on 2017/09/19:
Mexico City, Mexico (MX) – MX (138.204.171.109)

Please adjust your firewalls appropriately if you whitelist so your checks do not fail because of the probe IP address changes.

An always current and updated list of all the IP addresses for our probe servers can be found in the FAQ

[Update 2017-09-18] – the new probe planned for Mexico will not be added as planned.

[UPDATE – 2017-09-19 10:41GMT-6] – IP change complete.