Skip to content

Commit 4b4db87

Browse files
phavekespmeulen
authored andcommitted
rsyslog: Only opdate the lastseen tabel for newer dates
1 parent 5a6cdf4 commit 4b4db87

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

roles/rsyslog/templates/parse_ebauth_to_mysql.py.j2

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,17 @@ cursor = db.cursor()
2121

2222
def update_lastseen(user_id, date):
2323
query = """
24-
REPLACE INTO last_login (userid, lastseen)
24+
INSERT INTO last_login (userid, lastseen)
2525
VALUES (%s, %s)
26+
ON DUPLICATE KEY UPDATE
27+
lastseen = GREATEST(lastseen, VALUES(lastseen))
2628
"""
27-
cursor.execute(query, (user_id, date))
28-
db.commit()
29+
try:
30+
cursor.execute(query, (user_id, date))
31+
db.commit()
32+
except Exception as e:
33+
db.rollback()
34+
print(f"Error updating last_login for user {user_id}: {e}")
2935

3036
def load_in_mysql(a,b,c,d,e,f,g,h):
3137
sql = """insert into log_logins(idpentityid,spentityid,loginstamp,userid,keyid,sessionid,requestid,trustedproxyentityid) values(%s,%s,%s,%s,%s,%s,%s,%s)"""
@@ -73,4 +79,3 @@ for filename in os.listdir(workdir):
7379

7480
cursor.close()
7581
db.close()
76-

0 commit comments

Comments
 (0)