tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

signals.py (735B)


      1 import json
      2 
      3 from django.contrib.admin.models import LogEntry
      4 from django.db.models.signals import post_save
      5 from django.dispatch import receiver
      6 
      7 from django_redis import get_redis_connection
      8 
      9 
     10 @receiver(post_save, sender=LogEntry)
     11 def publish_event(instance, **kwargs):
     12    event = {
     13        "model": instance.content_type.name,
     14        "object": instance.object_repr,
     15        "message": instance.get_change_message(),
     16        "timestamp": instance.action_time.isoformat(),
     17        "user": str(instance.user),
     18        "content_type_id": instance.content_type_id,
     19        "object_id": instance.object_id,
     20    }
     21    connection = get_redis_connection("default")
     22    payload = json.dumps(event)
     23    connection.publish("events", payload)