petite modifs, on peut automatiquement envoyer un mail certaines personnes
en cas de crash d'un serveur... merci xabi pour ses ides ;-) darcs-hash:20041213235540-4ec08-e751947201d72686ad162fabc1dff4efb4ec7e55.gz
This commit is contained in:
parent
87a57fa3cb
commit
8e69382001
1 changed files with 28 additions and 17 deletions
|
@ -94,11 +94,15 @@ class autostatus(gen_config) :
|
||||||
# format [ nom, ip, port(0=ping), description ]
|
# format [ nom, ip, port(0=ping), description ]
|
||||||
|
|
||||||
services_exterieurs = {}
|
services_exterieurs = {}
|
||||||
services_exterieurs ['Jussieu'] = [ 'Jussieu', '195.83.118.1', 21, 'Le serveur <a href="ftp://ftp.lip6.fr">FTP</a> de Jussieu. (France)' ]
|
services_exterieurs ['Jussieu'] = [ 'Jussieu', '195.83.118.1', 21, 'Le serveur <a href="ftp://ftp.lip6.fr">FTP</a> de Jussieu. (France)', 'nobody']
|
||||||
services_exterieurs ['Free'] = [ 'Free', '213.228.0.141', 21, 'Le serveur <a href="ftp://ftp.free.fr">FTP</a> de free. (France)' ]
|
services_exterieurs ['Free'] = [ 'Free', '213.228.0.141', 21, 'Le serveur <a href="ftp://ftp.free.fr">FTP</a> de free. (France)', 'nobody' ]
|
||||||
services_exterieurs ['Voila'] = [ 'Voila', '195.101.94.80', 80, 'Est-ce que <a href="http://www.voila.fr">Voila</a> fonctionne ? (France)' ]
|
services_exterieurs ['Voila'] = [ 'Voila', '195.101.94.80', 80, 'Est-ce que <a href="http://www.voila.fr">Voila</a> fonctionne ? (France)', 'nobody' ]
|
||||||
services_exterieurs ['Yahoo!'] = [ 'Yahoo!', '66.94.230.39', 80, 'Est-ce que <a href="http://www.yahoo.com">Yahoo!</a> fonctionne ? (USA)' ]
|
services_exterieurs ['Yahoo!'] = [ 'Yahoo!', '66.94.230.39', 80, 'Est-ce que <a href="http://www.yahoo.com">Yahoo!</a> fonctionne ? (USA)', 'nobody' ]
|
||||||
services_exterieurs ['Altalavista'] = [ 'Altavista', '216.155.200.155', 80, 'Est-ce que <a href="http://www.altavista.com">Altavista</a> fonctionne ? (USA)' ]
|
services_exterieurs ['Altalavista'] = [ 'Altavista', '216.155.200.155', 80, 'Est-ce que <a href="http://www.altavista.com">Altavista</a> fonctionne ? (USA)', 'nobody' ]
|
||||||
|
|
||||||
|
# personnes à informer pour l'indiponibilité de certains serveurs
|
||||||
|
contact = {}
|
||||||
|
contact ['pegase.crans.org'] = 'pessoles@crans.org'
|
||||||
|
|
||||||
# service à redémarer
|
# service à redémarer
|
||||||
restart_cmd = ""
|
restart_cmd = ""
|
||||||
|
@ -119,6 +123,13 @@ class autostatus(gen_config) :
|
||||||
append = append + " ".join( dico[i] ) + "\n"
|
append = append + " ".join( dico[i] ) + "\n"
|
||||||
return append.encode('iso-8859-15')
|
return append.encode('iso-8859-15')
|
||||||
|
|
||||||
|
def mail_contact (self, nom) :
|
||||||
|
# retourne le mail à qui envoyer les avis pour un serveur
|
||||||
|
if nom in self.contact.keys() :
|
||||||
|
return self.contact[nom]
|
||||||
|
else :
|
||||||
|
return 'nobody'
|
||||||
|
|
||||||
def _gen (self) :
|
def _gen (self) :
|
||||||
|
|
||||||
# machines crans
|
# machines crans
|
||||||
|
@ -145,12 +156,12 @@ class autostatus(gen_config) :
|
||||||
if m.info() :
|
if m.info() :
|
||||||
# on regarde si c'est une borne de batiment
|
# on regarde si c'est une borne de batiment
|
||||||
if ( m.info()[0][0:3] == "Au " ) and ( len(m.info()[0]) == 5 ) :
|
if ( m.info()[0][0:3] == "Au " ) and ( len(m.info()[0]) == 5 ) :
|
||||||
bornes[ "1-" + m.info()[0][4]+m.info()[0][3] + "-" + m.nom() ] = [ m.nom().split(".")[0] , m.nom() , 'none' , 'nobody' , m.info()[0] ]
|
bornes[ "1-" + m.info()[0][4]+m.info()[0][3] + "-" + m.nom() ] = [ m.nom().split(".")[0] , m.nom() , 'none' , self.mail_contact(m.nom()) , m.info()[0] ]
|
||||||
else :
|
else :
|
||||||
bornes[ "2-" + m.info()[0] + m.nom() ] = [ m.nom().split(".")[0] , m.nom() , 'none' , 'nobody' , m.info()[0] ]
|
bornes[ "2-" + m.info()[0] + m.nom() ] = [ m.nom().split(".")[0] , m.nom() , 'none' , self.mail_contact(m.nom()) , m.info()[0] ]
|
||||||
else :
|
else :
|
||||||
# on met les bornes non définies à la fin (ordre alphabétique)
|
# on met les bornes non définies à la fin (ordre alphabétique)
|
||||||
bornes[ "3-" + m.nom() ] = [ m.nom().split(".")[0] , m.nom() , 'none' , 'nobody' , 'Inutilise' ]
|
bornes[ "3-" + m.nom() ] = [ m.nom().split(".")[0] , m.nom() , 'none' , self.mail_contact(m.nom()) , 'Inutilise' ]
|
||||||
|
|
||||||
# les switchs
|
# les switchs
|
||||||
elif m.info() and 'switch' in m.info()[0].lower() :
|
elif m.info() and 'switch' in m.info()[0].lower() :
|
||||||
|
@ -166,15 +177,15 @@ class autostatus(gen_config) :
|
||||||
index = 'a' + m.nom().split(".")[0]
|
index = 'a' + m.nom().split(".")[0]
|
||||||
|
|
||||||
# on ajoute au dictionnaire
|
# on ajoute au dictionnaire
|
||||||
switchs[ index ] = [ m.nom().split(".")[0] , m.nom() , 'none' , 'nobody' , m.info()[0] ]
|
switchs[ index ] = [ m.nom().split(".")[0] , m.nom() , 'none' , self.mail_contact(m.nom()) , m.info()[0] ]
|
||||||
|
|
||||||
# la ferme
|
# la ferme
|
||||||
elif '.ferme.crans.org' in m.nom() :
|
elif '.ferme.crans.org' in m.nom() :
|
||||||
nom = m.nom().split(".")[0]
|
nom = ".".join(m.nom().split(".")[0:2])
|
||||||
if m.info() :
|
if m.info() :
|
||||||
ferme[ nom ] = [ nom , m.nom() , 'none' , 'nobody' , m.info()[0] ]
|
ferme[ nom ] = [ nom , m.nom() , 'none' , self.mail_contact(m.nom()) , m.info()[0] ]
|
||||||
else :
|
else :
|
||||||
ferme[ nom ] = [ nom , m.nom() , 'none' , 'nobody' , 'Infos non disponibles' ]
|
ferme[ nom ] = [ nom , m.nom() , 'none' , self.mail_contact(m.nom()) , 'Infos non disponibles' ]
|
||||||
|
|
||||||
# les serveurs
|
# les serveurs
|
||||||
else :
|
else :
|
||||||
|
@ -183,9 +194,9 @@ class autostatus(gen_config) :
|
||||||
else :
|
else :
|
||||||
nom = m.nom().split(".")[0]
|
nom = m.nom().split(".")[0]
|
||||||
if m.info() :
|
if m.info() :
|
||||||
serveurs[ nom ] = [ nom , m.nom() , 'none' , 'nobody' , m.info()[0] ]
|
serveurs[ nom ] = [ nom , m.nom() , 'none' , self.mail_contact(m.nom()) , m.info()[0] ]
|
||||||
else :
|
else :
|
||||||
serveurs[ nom ] = [ nom , m.nom() , 'none' , 'nobody' , 'Infos non disponibles' ]
|
serveurs[ nom ] = [ nom , m.nom() , 'none' , self.mail_contact(m.nom()) , 'Infos non disponibles' ]
|
||||||
|
|
||||||
# route vers l'extérieur
|
# route vers l'extérieur
|
||||||
########################
|
########################
|
||||||
|
@ -232,7 +243,7 @@ class autostatus(gen_config) :
|
||||||
# on l'ajoute à la route
|
# on l'ajoute à la route
|
||||||
if route_to_ext :
|
if route_to_ext :
|
||||||
route_to_ext += '\n'
|
route_to_ext += '\n'
|
||||||
route_to_ext += '%s %s %s nobody@crans.org %s' % (tmp_name, tmp_ip, tmp_depends, tmp_desc)
|
route_to_ext += '%s %s %s %s %s' % (tmp_name, tmp_ip, tmp_depends,self.mail_contact(tmp_name),tmp_desc)
|
||||||
|
|
||||||
# services extérieurs
|
# services extérieurs
|
||||||
#####################
|
#####################
|
||||||
|
@ -241,9 +252,9 @@ class autostatus(gen_config) :
|
||||||
for key in self.services_exterieurs.keys() :
|
for key in self.services_exterieurs.keys() :
|
||||||
s = self.services_exterieurs[key]
|
s = self.services_exterieurs[key]
|
||||||
if s[2] :
|
if s[2] :
|
||||||
services_exterieurs[ key ] = [ s[0] + ':' + str(s[2]), s[1] , depends_to_ext, 'nobody' , s[3] ]
|
services_exterieurs[ key ] = [ s[0] + ':' + str(s[2]), s[1] , depends_to_ext, s[4] , s[3] ]
|
||||||
else :
|
else :
|
||||||
services_exterieurs[ key ] = [ s[0] , s[1] , depends_to_ext, 'nobody' , s[3] ]
|
services_exterieurs[ key ] = [ s[0] , s[1] , depends_to_ext, s[4] , s[3] ]
|
||||||
|
|
||||||
# génération du fichier
|
# génération du fichier
|
||||||
#######################
|
#######################
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue