From 2bc67ce3268cb790047e768cfd906f75a3aa603d Mon Sep 17 00:00:00 2001 From: Brian Moe <brian.moe@ligo.org> Date: Fri, 10 Jul 2009 14:31:13 -0500 Subject: [PATCH] Separate Test events alerts email list / ping give host name --- gracedb/alert.py | 84 +++++++----------------------------------------- gracedb/views.py | 4 ++- settings.py | 11 +++++-- settings_dev.py | 9 ++++-- 4 files changed, 30 insertions(+), 78 deletions(-) diff --git a/gracedb/alert.py b/gracedb/alert.py index 2d94214f0..d1d4f7939 100644 --- a/gracedb/alert.py +++ b/gracedb/alert.py @@ -14,6 +14,12 @@ def issueAlert(event, location): issueEmailAlert(event, location) def issueEmailAlert(event, location): + if event.group.name == 'Test': + fromaddress = settings.ALERT_TEST_EMAIL_FROM + toaddress = settings.ALERT_TEST_EMAIL_TO + else: + fromaddress = settings.ALERT_EMAIL_FROM + toaddress = settings.ALERT_EMAIL_TO subject = "[gracedb] %s event. ID: %s" % (event.get_analysisType_display(), event.graceid()) message = """ New Event @@ -33,23 +39,20 @@ def issueEmailAlert(event, location): event.wikiurl(), event.submitter.name, location) - fromaddress = settings.ALERT_EMAIL_FROM - to = settings.ALERT_EMAIL_TO - send_mail(subject, message, fromaddress, to) + send_mail(subject, message, fromaddress, toaddress) def issueXMPPAlert(event, location): # XXX awful! + # Need a good way to know which things to send out to lvalert. + # Currently, only Test/* and CBC/MBTAOnline get alerts. if event.analysisType != 'MBTA' and event.group.name != 'Test': return env = {} env["PYTHONPATH"] = ":".join(sys.path) - if event.analysisType == 'MBTA' and event.group.name == 'CBC': - nodename = "cbc_mbta_online" - else: - nodename = "%s_%s"% (event.group.name, event.get_analysisType_display()) - nodename = nodename.lower() + nodename = "%s_%s"% (event.group.name, event.get_analysisType_display()) + nodename = nodename.lower() null = open('/dev/null','w') p = Popen( @@ -74,22 +77,6 @@ def issueXMPPAlert(event, location): else: break -#def issueAlertX(event, location): -# username = "gracedb" -# server = "lvalert.phys.uwm.edu" -# resource = "sender" -# password = "w4k3upal1ve" -# node = "cbc_mbta_online" -# voevent = createPayload(event.graceid(), location) -# -# myjid=JID(username+"@"+server+"/"+resource) -# recpt=JID("pubsub."+server) -# -# s=MyClient(jid=myjid, password=password, recpt=recpt) -# s.connect() -# s.send_myevent(voevent, node) -# s.loop(1) - def createPayload (uid, filename): template = """<?xml version='1.0' encoding='utf-8'?> <!DOCTYPE LIGO_LW SYSTEM "http://ldas-sw.ligo.caltech.edu/doc/ligolwAPI/html/ligolw_dtd.txt"> @@ -105,52 +92,3 @@ def createPayload (uid, filename): """ return template % { 'uid': uid, 'filename': filename } -## pubsub import must come first because it overloads part of the -## StanzaProcessor class -#from glue.lvalert import pubsub -# -#from pyxmpp.all import JID, TLSSettings -#from pyxmpp.jabber.all import Client -# -# -#class MyClient(Client): -# def __init__(self, jid, password, recpt): -# # if bare JID is provided add a resource -- it is required -# if not jid.resource: -# jid=JID(jid.node, jid.domain, "sender") -# self.myrecpt = recpt -# -# # we require a TLS connection -# t=TLSSettings(require=True,verify_peer=False) -# -# # setup client with provided connection information -# # and identity data -# Client.__init__(self, jid, password, \ -# auth_methods=["sasl:GSSAPI","sasl:PLAIN"], tls_settings=t) -# -# def stream_state_changed(self,state,arg): -# """This one is called when the state of stream connecting the component -# to a server changes. This will usually be used to let the user -# know what is going on.""" -# pass -# -# def session_started(self): -# self.stream.set_response_handlers(self.pspl, \ -# self.pspl.generic_result,self.pspl.create_error,\ -# self.pspl.create_timeout) -# self.stream.send(self.pspl) -# -# def idle(self): -# if self.stream and self.session_established: -# self.disconnect() -# time.sleep(2) -# -# def post_disconnect(self): -# raise Disconnected -# -# def send_myevent(self, voevent, node): -# self.pspl=pubsub.PubSub(from_jid = self.jid, to_jid = self.myrecpt, stream = self, stanza_type="get") -# self.pspl.publish(voevent,node) - - -# vi: sts=4 et sw=4 diff --git a/gracedb/views.py b/gracedb/views.py index 513a1af1d..c834b8cb2 100644 --- a/gracedb/views.py +++ b/gracedb/views.py @@ -3,6 +3,7 @@ from django.http import HttpResponse, HttpResponseRedirect, HttpResponseNotFound from django.template import RequestContext from django.core.urlresolvers import reverse, get_script_prefix from django.shortcuts import render_to_response +from django.contrib.sites.models import Site from django.views.generic.list_detail import object_detail, object_list @@ -161,7 +162,8 @@ def log(request): return response def ping(request): - ack = request.POST.get('ack', None) or request.GET.get('ack','ACK') + ack = "(%s) " % Site.objects.get_current() + ack += request.POST.get('ack', None) or request.GET.get('ack','ACK') response = HttpResponse(mimetype='text/plain') response.write(ack) response['Content-length'] = len(ack) diff --git a/settings.py b/settings.py index bc849d362..1bacfdac1 100644 --- a/settings.py +++ b/settings.py @@ -4,19 +4,26 @@ DEBUG = True TEMPLATE_DEBUG = DEBUG ADMINS = ( - # ('Your Name', 'your_email@domain.com'), + ('Brian Moe', 'bmoe@gravity.phys.uwm.edu'), ) MANAGERS = ADMINS -ALERT_EMAIL_FROM = "root@archie.phys.uwm.edu" +ALERT_EMAIL_FROM = "Gracedb Alert <root@archie.phys.uwm.edu>" ALERT_EMAIL_TO = ["patrick@gravity.phys.uwm.edu", "larry@gravity.phys.uwm.edu", "bmoe@gravity.phys.uwm.edu", 'Frederique Marion <marionf@lapp.in2p3.fr>', "Benoit MOURS <mours@lapp.in2p3.fr>", + "Jonah Kanner <jkanner@umd.edu>", ] +ALERT_TEST_EMAIL_FROM = "Gracedb TEST Alert <root@archie.phys.uwm.edu>" +ALERT_TEST_EMAIL_TO = ["patrick@gravity.phys.uwm.edu", + "larry@gravity.phys.uwm.edu", + "bmoe@gravity.phys.uwm.edu", + ] + DATABASE_ENGINE = 'mysql' DATABASE_NAME = 'gracedb' DATABASE_USER = 'gracedb' diff --git a/settings_dev.py b/settings_dev.py index 53176ced3..41e9cc9c7 100644 --- a/settings_dev.py +++ b/settings_dev.py @@ -4,17 +4,22 @@ DEBUG = True TEMPLATE_DEBUG = DEBUG ADMINS = ( - # ('Your Name', 'your_email@domain.com'), + ('Brian Moe', 'bmoe@gravity.phys.uwm.edu'), ) MANAGERS = ADMINS -ALERT_EMAIL_FROM = "bmoe@uwm.edu" +ALERT_EMAIL_FROM = "Dev Alert <root@moe.phys.uwm.edu>" ALERT_EMAIL_TO = [ "Brian Moe <bmoe@gravity.phys.uwm.edu>", "bmoe@uwm.edu", ] +ALERT_TEST_EMAIL_FROM = "Dev Test Alert <root@moe.phys.uwm.edu>" +ALERT_TEST_EMAIL_TO = [ + "Brian Moe <bmoe@gravity.phys.uwm.edu>", + ] + DATABASE_ENGINE = 'mysql' DATABASE_NAME = 'gracedb' DATABASE_USER = 'gracedb' -- GitLab