[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.python

Monitoring SSHd and web servers?

unknown

3/14/2008 6:32:00 AM

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.
3 Answers

Jonathan Gardner

3/14/2008 4:25:00 PM

0

On Mar 13, 11:32 pm, Gilles Ganault <nos...@nospam.com> wrote:
> 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

3/14/2008 4:46:00 PM

0

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.com> wrote:
>
>> 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
sgeiger@ncee.net | 402-438-8958 | http://ww...

Leading the Campaign for Economic and Financial Literacy

Pacman

3/14/2008 6:14:00 PM

0

Gilles Ganault <nospam@nospam.com> wrote:
>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