diff --git a/prod_rmq_agents/group_member.py b/prod_rmq_agents/group_member.py
index 1ae50add641f3c56cfb57a713d4076ee01770827..afb786f0c25e3c3483777346ed3b0a6ea70b86cb 100644
--- a/prod_rmq_agents/group_member.py
+++ b/prod_rmq_agents/group_member.py
@@ -1,8 +1,10 @@
 #!/usr/bin/env python
+import dataset
 import json
 import pika
 import shlex
 import rc_util
+from datetime import datetime
 from subprocess import Popen, PIPE
 from rc_rmq import RCRMQ
 import rabbit_config as rcfg
@@ -12,10 +14,34 @@ task = "group_member"
 args = rc_util.get_args()
 logger = rc_util.get_logger(args)
 
+# Initialize db
+db = dataset.connect(f"sqlite:///{rcfg.db_path}/user_reg.db")
+table = db["groups"]
+
 # Instantiate rabbitmq object
 rc_rmq = RCRMQ({"exchange": rcfg.Exchange, "exchange_type": "topic"})
 
 
+def insert_db(operation, groupname, msg):
+    if operation == "remove":
+        op = 0
+    elif operation == "add":
+        op = 1
+
+    # SQL insert
+    table.insert(
+        {
+            "user": msg["username"],
+            "group": groupname,
+            "operation": op,
+            "date": datetime.now(),
+            "host": msg["host"],
+            "executed_by": msg["executed_by"],
+            "interface": msg["interface"],
+        }
+    )
+
+
 def group_member(ch, method, properties, body):
     msg = json.loads(body)
     username = msg["username"]
@@ -47,6 +73,7 @@ def group_member(ch, method, properties, body):
                 logger.info(
                     f"User {username} is removed from {each_group} group"
                 )
+                insert_db("remove", each_group, msg)
 
         if "add" in msg["groups"]:
             for each_group in msg["groups"]["add"]:
@@ -69,6 +96,7 @@ def group_member(ch, method, properties, body):
                 out, err = proc.communicate()
                 logger.debug(f"Result: {err}")
                 logger.info(f"User {username} is added to {each_group} group")
+                insert_db("add", each_group, msg)
 
         msg["success"] = True