Deployment tips and tricks: How to receive instant notification when your site goes down.

Those of you who have been with Morfik for a while may remember times when the Morfik site would go down and we would get the bad news from you guys. Thankfully those days are long gone and I can’t recall the last time a user had to contact us about a site outage.

Of course there are a number of reasons for this.  Yes, Morfik software is now more mature and stable, and the auto-deployment process reduces the pain of maintenance and updates, but the main reason is that we are using a simple yet effective monitoring service which informs us immediately of any problem with our site or service. I receive a call within minutes on my cell phone!

Monitoring can be implemented at a few levels: the server level, Hosting Service Provider level and independent monitoring service level. To me the last one is the key. (And by the way I have no affiliation with any of the monitoring  service providers).

If you set up your own monitoring server it is possible that your server fails long before you know it. Moreover, setting up your server to send SMS messages or make a Voice Call is not a trivial task.

If you have a reputable managed hosting service provider, chances are they monitor your server and your applications. But what happens when they experience internal, hardware or networking problems?

The most reliable solution for monitoring your important services is using a dedicated monitoring service company. Independent monitoring is what they do and they are very good at it.

These companies offer a wide range of monitoring services, from very basic pinging services to searching  for a string on your web page, and from simple monitoring applications to more sophisticated and interactive monitoring. Some of them have servers all round the world. They can monitor your service/servers from the nearest point of presence or from a list of locations around the world. They can send you or other contacts multiple alerts using SMS, Voice Call, email or instant messengers.

There are a lot of monitoring service companies around. Some offer free monitoring services. Usually the free service does only basic monitoring with high intervals (usually more than every 30 minutes) and does not include SMS or Voice Call support.

Depending on the criticality of your web services, you need to choose the right service provider and the right level of service for your web application.

At Morfik we use WebSitePulse for monitoring our important devices and services. We have been using their services for nearly 3 years. Nowadays I get a voice call and email notification within a few minutes of a service going down (and I’m proud to say that this does not happen very often.)

WebSitePulse has an extensive number of nodes (almost 40 locations) worldwide for monitoring your target system from almost anywhere in the world. They offer their monitoring service in 5 categories.

  1. Servers and network monitoring.
  2. Application or website monitoring.
  3. Transaction monitoring.
  4. Email monitoring.
  5. Vulnerabilities monitoring.

Although they are all relevant and interesting, I will only talk about the first 3 categories.

Using the server and network monitoring option, you can monitor the uptime/availability of your server. You can choose many different locations around the world from which to monitor your server, and can check it as often as every minute. Here is a list of protocol and service specific pings which can be used for this option: PING, HTTP, HTTPS, POP3, SMTP, IMAP, DNS, SIP, RTSP, MySQL, MS SQL, SFTP, RTMP or a customer PORT. This option is good for firewalls, load balancers, gateways and other servers or network devices.

The second option, website monitoring, is for full download of a page and checking for errors. For a website or a static page this can be very effective.

However the third option, transaction monitoring, is the most interesting one for complex pages or transactions. It has support for custom script, AJAX and rich multimedia application monitoring. This option allows for testing and monitoring of multi-step transactions. This option goes beyond monitoring and can fully verify a transaction. Setting up of all these are very easy through an online control panel and wizards.

The main issue to consider when setting up your monitoring service is “How often do you need to check your site?” You can check your site every minute but of course that would be more costly. In general, there are 2 aspects on setting up the frequency of monitoring.

  • The main frequency of monitoring
  • Frequency of monitoring after error detection.

For example, if you set the main frequency for monitoring your site to every 10 minutes, then you can set the frequency of the monitoring after an error is detected, to every 3 minutes or even every single minute.

Another interesting aspect of this service is the ability to measure the network performance of your targets; things like how fast your DNS resolves queries on your domain, how long it takes for the first and last byte to arrive or the general latency of your system from any given location. Real time reports can be accessed from an online control panel and daily reports can be sent by email. There is also a choice for setting a time zone for each target so you can see the report in the time zone that is most important to you.

I’m sure you can find many other web monitoring service providers that are similar or even better than WebSitePulse. (eg. Site24x7, Alerter, Pingdom, Webmetrics) My aim is not to promote this company, but simply to share my experience in this area with you.

Leave a Reply

Fields marked by an asterisk (*) are required.