Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

How can I check the availability of websites from hosted by company? Ping the server and checking if the services for IIS or Apache/Tomcat is not enough. I want to see if the sites are responsive, if I can login. My idea is to build a script using cURL to access the websites and parse for certain words. However using cURL to access a secure site (HTTPS://www.fleetagent.be) doesnt seem to work. cURL might not be the best tool! Any ideas how to check the availability of this website?

Thanks in advance, Darrell

share|improve this question
add comment

5 Answers

up vote 1 down vote accepted

I want to see if the sites are responsive, if I can login.

The keyword here is "transaction monitoring" or "real browser monitoring". If you want to run this locally, you can use cUrl (for simple logins), or better automate a real browser (Selenium, iMacros for Firefox/Chrome, WatiN,...) via Python, Perl, etc. The advantage of using a real browser is that it works with SSL and all kinds of Javascript etc.

Consider using a hosted solution. For example, AlertFox has a free plan with transaction monitoring.

share|improve this answer
    
Thank you, Selenium and iMacros looks promising. I will have a look at the two products. –  DeChinees Jan 14 '11 at 11:48
add comment

scripting is one option, such as the www::mechanize modules for perl and python. These work with ssl sites.

You could also write a custom nagios module to do the checks. Depends what your current monitoring solution is.

share|improve this answer
    
Our monitoring is SCOM 2007. Any possibilities using powershell? –  DeChinees Jan 14 '11 at 10:52
1  
Nagios and check_http nagiosplugins.org/man/check_http it's a good solution. Works with https too –  Cristi Jan 14 '11 at 11:15
add comment

I usually use nagios plugins to check my services health. As Sirex suggested, you can use check_http plugin.

However, using check_http plugin to access a static page might not be enough. Your idea about login is a good one to make sure everything is working as expected.

You can do it by creating a page (PHP/perl/jsp, etc.) that will automatically login using some parameters passed in the requested URL. When this page execution succeeded, you can print some recognizable message. This message can be checked by the check_http plugin. So, you will see a critical state when the output is different.

For the response time, the same plugin can be configured to wait for a specific timeout.

share|improve this answer
add comment

I think cURL is still the best way, but you need to check the cURL options to disregard the certificate check (and check your certificates in another way!!) or make sure cURL has access to the right root certificates.

We use zabbix to monitor website availability and it uses cURL internally. This is monitoring up to the level of 'can I login to the site and get a correct welcome page'.

share|improve this answer
add comment

One of the best ways to do it is by using a service such as http://www.watchmouse.com which I have used - this gives you checking from all over the globe.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.