By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
443,272 Members | 1,733 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 443,272 IT Pros & Developers. It's quick & easy.

Monitoring SSHd and web servers?

P: n/a
Hello

I'd like to monitor connections to a remote SSH and web server. Does
someone have some code handy that would try to connect every 5mn, and
print an error if the script can't connect?

Thank you.
Mar 14 '08 #1
Share this Question
Share on Google+
3 Replies


P: n/a
On Mar 13, 11:32*pm, Gilles Ganault <nos...@nospam.comwrote:
I'd like to monitor connections to a remote SSH and web server. Does
someone have some code handy that would try to connect every 5mn, and
print an error if the script can't connect?
from time import sleep
while True:
# Try to connect. May want to spawn a subprocess running a simple
shell script
# Handle success / failure appropriately
sleep 5*60 # Sleep for 5 minutes

What you monitor is up to you. At a basic level, you can see if the
server is accepting connections. At a higher level, see if you can get
a page or see if you can login as a specific person. At a higher
level, you may want to check what is on the page or what happens when
you log in. It's all up to you.
Mar 14 '08 #2

P: n/a
I would recommend using a tried-and-true solution for making sure your
uptime of various services is maximized (if that's what your goal is).

Running a local "daemon-monitoring daemon" is one option--monit does a
good job. Checking services over the network, as nagios does well, is
another solution.

Jonathan Gardner wrote:
On Mar 13, 11:32 pm, Gilles Ganault <nos...@nospam.comwrote:
>I'd like to monitor connections to a remote SSH and web server. Does
someone have some code handy that would try to connect every 5mn, and
print an error if the script can't connect?

from time import sleep
while True:
# Try to connect. May want to spawn a subprocess running a simple
shell script
# Handle success / failure appropriately
sleep 5*60 # Sleep for 5 minutes

What you monitor is up to you. At a basic level, you can see if the
server is accepting connections. At a higher level, see if you can get
a page or see if you can login as a specific person. At a higher
level, you may want to check what is on the page or what happens when
you log in. It's all up to you.

--
Shane Geiger
IT Director
National Council on Economic Education
sg*****@ncee.net | 402-438-8958 | http://www.ncee.net

Leading the Campaign for Economic and Financial Literacy

Mar 14 '08 #3

P: n/a
Gilles Ganault <no****@nospam.comwrote:
>I'd like to monitor connections to a remote SSH and web server. Does
someone have some code handy that would try to connect every 5mn, and
print an error if the script can't connect?
This script has been pretty reliable for us for the past few years,
much more reliable than the expect script it replaced.

#!/usr/bin/python
import sys
import pexpect
quiet = open("/dev/null", "rw")
sys.stdin = quiet
sys.stdout = quiet
sys.stderr = quiet
smtp = pexpect.spawn("telnet " + sys.argv[1] + " 25")
smtp.expect('220', timeout=120)
smtp.sendline("quit\n^]q")

Pacman
Mar 14 '08 #4

This discussion thread is closed

Replies have been disabled for this discussion.