08/02/2012

How to Monitor Your Website

In today’s world, it is critical for every organization to maintain the best possible performance and reliability for its website. However, website monitoring can be complicated; there are a lot of factors involved. Here are some suggestions to make sure every aspect is covered.

1. Ping the router. This is the first line of defense. If the Internet connection goes down, nothing else matters. Internet Service Providers (ISPs) have their own outages from time to time that can occur due to a variety of reasons: Carrier failures, internal equipment failures, mistakes by engineers like router configuration errors and natural disasters. The last link in the chain before public Internet access reaches the web server is the ISP’s router. The router can be monitored using the ICMP protocol, commonly known as ping.

2. Check the web server’s software and operating system. Make sure the server is alive by testing its ability to respond correctly to connection requests. Before a server can worry about creating a web page and returning it, it has to be able to establish socket connections with clients. Servers use the transmission control protocol (TCP) to manage as many as thousands of simultaneous connections.

3. Make sure the web server responds to HTTP requests. The HTTP protocol drives the Internet. The web server must respond to valid requests with a 200 OK message. Other responses may indicate a problem with the server. For example, if the server has a problem with resources or a back-end process stops working correctly, the web server may begin returning 500 Internal Server Error responses.

4. Make sure the content returned is valid. If a back-end process such as a database query fails, the web server may return an error page from the database with a 200 OK response. Although the response is valid, the page returned is definitely not what the user was expecting. Check the content for key words that prove everything is working correctly.

5. Make sure transactions are working. Transactions come in many forms. Some examples are: a simple log in function where a user enters a username and password to gain entry to a site, a signup form for a newsletter and an online purchase order transaction. Some transactions are very simple and others are quite complex. The more complex the transaction, the more things there are to go wrong. A simple change by a developer can have an unexpected consequence in a deep level of a transaction. The entire transaction process needs to be thoroughly tested on a regular basis.

All of these things need to be done on a regular basis. It’s possible to do these tests manually, but a much better solution is to use a website monitoring service to perform the tests automatically and frequently. Schedule all of these tests to run at least once an hour. Processes that are critical to the success of an organization may need to be tested as often as once a minute.