From 3386cf6728c534e27e60ea36475b90bb7fbacfb9 Mon Sep 17 00:00:00 2001 From: David Schmitz <schmitz@lrz.de> Date: Tue, 25 Sep 2018 15:03:38 +0000 Subject: [PATCH] new rule concept: for rules which are updated inactively have to also call commit_edit --- flowspec/models.py | 3 ++- flowspec/viewsets.py | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/flowspec/models.py b/flowspec/models.py index 6199de9d..907e5920 100644 --- a/flowspec/models.py +++ b/flowspec/models.py @@ -44,7 +44,7 @@ from peers.models import PeerRange, Peer FORMAT = '%(asctime)s %(levelname)s: %(message)s' logging.basicConfig(format=FORMAT) logger = logging.getLogger(__name__) -logger.setLevel(logging.DEBUG) +logger.setLevel(logging.INFO) FRAGMENT_CODES = ( @@ -772,6 +772,7 @@ def send_message(msg, user): b.close() def send_message_multiple(msg, user_list): + logger.info("model::send_message_multiple(): user_list="+str(user_list)+" : "+str(msg)) for peer in user_list: b = beanstalkc.Connection() b.use(settings.POLLS_TUBE) diff --git a/flowspec/viewsets.py b/flowspec/viewsets.py index b55d7f1b..6aa65a7b 100644 --- a/flowspec/viewsets.py +++ b/flowspec/viewsets.py @@ -116,10 +116,11 @@ class RuleViewSet(viewsets.ModelViewSet): obj.applier = self.request.user def post_save(self, obj, created): - logger.info("RuleViewSet::post_save(): "+str(self)+", obj="+str(obj) + " " + str(created)) + logger.info("RuleViewSet::post_save(): "+str(self)+", obj="+str(obj) + " created=" + str(created)) if created and obj.editing == False: obj.commit_add() else: + logger.info("RuleViewSet::post_save(): "+str(self)+", obj="+str(obj) + " obj.status="+str(obj.status)+" obj.editing="+str(obj.editing)) if obj.status == "CREATED" and obj.editing == False: obj.status = "INACTIVE" obj.save() @@ -127,6 +128,8 @@ class RuleViewSet(viewsets.ModelViewSet): obj.commit_add() elif obj.status not in ['EXPIRED', 'INACTIVE', 'ADMININACTIVE'] and obj.editing == False: obj.commit_edit() + elif obj.status in ['INACTIVE'] and obj.editing == False: + obj.commit_edit() def pre_delete(self, obj): logger.info("RuleViewSet::pre_delete(): called "+str(self)+", obj="+str(obj)) -- GitLab