Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is there an app or a technique i can use to self monitor a server?

For a technique i was thinking of writing a log file every minute and clearing them every hour marking down every minute my app did not write (in another file or DB)

For DB i figure i can write a random value then read it every minute as well.

Finally using curl, a lib or something else to do a GET request on my page. Maybe this will never fail? and i should use a proxy server do a GET request on myself?

I plan to use windows server. I may have a linux server as well. I figure crontab can launch my app every minute (self quiting if an instance already exist) and i am unsure what to use on windows.

share|improve this question
If something is monitoring itself, when it goes down, it won't be able to tell you... – Kyle Brandt Oct 9 '09 at 15:44
up vote 3 down vote accepted

Any monitoring for a server should be done remotely - otherwise when your production system goes down you'll never know. It sounds like you are looking for both monitoring and trending (pretty graphs/etc are always nice). Two options I would say would be good choices for you:

If you haven't gotten into server monitoring before, I would sign up for a service like pingdom.

Word to the wise: especially if you are only monitoring one server now, I would highly recommend using a service like this, monitoring is something that's easy to Do Wrong if you've never done it before.

That being said, if you end up with two servers, or you have the budget for a cheap VPS somewhere, you could alternatively setup nagios + cacti or zenoss to monitor your production system.

If you are looking to proactively 'fix' problems, for linux, you have at least three options as I see it which would also serve your original objective if you can't do external monitoring:

  • Monit will help you monitor services on a local machine:

  • God is an extendable framework in ruby which does similar things to monit, but advertises increased flexibility:

  • Some kind of scripted system like what you describe which will track your uptime and react as necessary - I would avoid this unless you have a good reason not to use a pre-packaged solution.

share|improve this answer
pingdom cost more then my actual server :O. All of this is very informal and sounds great :D :D (epic answer x 9!) – acidzombie24 Oct 9 '09 at 16:36
PRTG is another option, have 100s monitoring variables to choose from, above all free under 10 sensors. There are plenty of other opensource systems, no need to re-invent the wheel. – Cold T Feb 13 '13 at 13:11

As noted by others .. if the idea is to notify you when something is down, then the monitoring must be done by a second system!

I have had good success using WhatsUpGold by Ipswitch on several small Windows-centric networks. For bigger or heterogeneous networks, a friend of mine is chief cook and bottle washer at OpenNMS.

share|improve this answer


We use it to monitor more than 100 servers (mainly W2K and W2K3) and it works fine. Zabbix is free and you'll need a LAMP server.

share|improve this answer

Your Answer


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.