Save account_id in logs table
This commit is contained in:
parent
a07470a7d2
commit
95357361bf
|
@ -433,7 +433,7 @@ class CommonConnection:
|
||||||
if obj.message is None:
|
if obj.message is None:
|
||||||
return
|
return
|
||||||
|
|
||||||
app.logger.insert_into_logs(jid, obj.timestamp, obj.kind,
|
app.logger.insert_into_logs(self.name, jid, obj.timestamp, obj.kind,
|
||||||
message=obj.message,
|
message=obj.message,
|
||||||
subject=obj.subject,
|
subject=obj.subject,
|
||||||
additional_data=obj.additional_data,
|
additional_data=obj.additional_data,
|
||||||
|
|
|
@ -946,7 +946,8 @@ class ConnectionHandlersBase:
|
||||||
app.config.should_log(self.name, obj.jid):
|
app.config.should_log(self.name, obj.jid):
|
||||||
show = app.logger.convert_show_values_to_db_api_values(obj.show)
|
show = app.logger.convert_show_values_to_db_api_values(obj.show)
|
||||||
if show is not None:
|
if show is not None:
|
||||||
app.logger.insert_into_logs(nbxmpp.JID(obj.jid).getStripped(),
|
app.logger.insert_into_logs(self.name,
|
||||||
|
nbxmpp.JID(obj.jid).getStripped(),
|
||||||
time_time(),
|
time_time(),
|
||||||
KindConstant.STATUS,
|
KindConstant.STATUS,
|
||||||
message=obj.status,
|
message=obj.status,
|
||||||
|
@ -1072,7 +1073,8 @@ class ConnectionHandlersBase:
|
||||||
# if not obj.nick, it means message comes from room itself
|
# if not obj.nick, it means message comes from room itself
|
||||||
# usually it hold description and can be send at each connection
|
# usually it hold description and can be send at each connection
|
||||||
# so don't store it in logs
|
# so don't store it in logs
|
||||||
app.logger.insert_into_logs(obj.jid,
|
app.logger.insert_into_logs(self.name,
|
||||||
|
obj.jid,
|
||||||
obj.timestamp,
|
obj.timestamp,
|
||||||
KindConstant.GC_MSG,
|
KindConstant.GC_MSG,
|
||||||
message=obj.msgtxt,
|
message=obj.msgtxt,
|
||||||
|
@ -1092,7 +1094,8 @@ class ConnectionHandlersBase:
|
||||||
subject = msg.getSubject()
|
subject = msg.getSubject()
|
||||||
|
|
||||||
if session.is_loggable():
|
if session.is_loggable():
|
||||||
app.logger.insert_into_logs(nbxmpp.JID(frm).getStripped(),
|
app.logger.insert_into_logs(self.name,
|
||||||
|
nbxmpp.JID(frm).getStripped(),
|
||||||
tim,
|
tim,
|
||||||
KindConstant.ERROR,
|
KindConstant.ERROR,
|
||||||
message=error_msg,
|
message=error_msg,
|
||||||
|
|
|
@ -954,7 +954,8 @@ class GcPresenceReceivedEvent(nec.NetworkIncomingEvent, HelperEvent):
|
||||||
show = app.logger.convert_show_values_to_db_api_values(self.show)
|
show = app.logger.convert_show_values_to_db_api_values(self.show)
|
||||||
if show is not None:
|
if show is not None:
|
||||||
fjid = nbxmpp.JID(self.fjid)
|
fjid = nbxmpp.JID(self.fjid)
|
||||||
app.logger.insert_into_logs(fjid.getStripped(),
|
app.logger.insert_into_logs(self.conn.name,
|
||||||
|
fjid.getStripped(),
|
||||||
time_time(),
|
time_time(),
|
||||||
KindConstant.GCSTATUS,
|
KindConstant.GCSTATUS,
|
||||||
contact_name=fjid.getResource(),
|
contact_name=fjid.getResource(),
|
||||||
|
|
|
@ -282,6 +282,10 @@ class Logger:
|
||||||
return [user['jid'] for user in family]
|
return [user['jid'] for user in family]
|
||||||
return [jid]
|
return [jid]
|
||||||
|
|
||||||
|
def get_account_id(self, account):
|
||||||
|
jid = app.get_jid_from_account(account)
|
||||||
|
return self.get_jid_id(jid, type_=JIDConstant.NORMAL_TYPE)
|
||||||
|
|
||||||
def get_jid_id(self, jid, kind=None, type_=None):
|
def get_jid_id(self, jid, kind=None, type_=None):
|
||||||
"""
|
"""
|
||||||
Get the jid id from a jid.
|
Get the jid id from a jid.
|
||||||
|
@ -1127,7 +1131,8 @@ class Logger:
|
||||||
"""
|
"""
|
||||||
return self.get_jid_id(jid, kind, type_)
|
return self.get_jid_id(jid, kind, type_)
|
||||||
|
|
||||||
def insert_into_logs(self, jid, time_, kind, unread=True, **kwargs):
|
def insert_into_logs(self, account, jid, time_, kind,
|
||||||
|
unread=True, **kwargs):
|
||||||
"""
|
"""
|
||||||
Insert a new message into the `logs` table
|
Insert a new message into the `logs` table
|
||||||
|
|
||||||
|
@ -1144,6 +1149,7 @@ class Logger:
|
||||||
a field in the `logs` table
|
a field in the `logs` table
|
||||||
"""
|
"""
|
||||||
jid_id = self.get_jid_id(jid, kind=kind)
|
jid_id = self.get_jid_id(jid, kind=kind)
|
||||||
|
account_id = self.get_account_id(account)
|
||||||
|
|
||||||
if 'additional_data' in kwargs:
|
if 'additional_data' in kwargs:
|
||||||
if not kwargs['additional_data']:
|
if not kwargs['additional_data']:
|
||||||
|
@ -1152,12 +1158,13 @@ class Logger:
|
||||||
kwargs['additional_data'] = json.dumps(kwargs["additional_data"])
|
kwargs['additional_data'] = json.dumps(kwargs["additional_data"])
|
||||||
|
|
||||||
sql = '''
|
sql = '''
|
||||||
INSERT INTO logs (jid_id, time, kind, {columns})
|
INSERT INTO logs (account_id, jid_id, time, kind, {columns})
|
||||||
VALUES (?, ?, ?, {values})
|
VALUES (?, ?, ?, ?, {values})
|
||||||
'''.format(columns=', '.join(kwargs.keys()),
|
'''.format(columns=', '.join(kwargs.keys()),
|
||||||
values=', '.join('?' * len(kwargs)))
|
values=', '.join('?' * len(kwargs)))
|
||||||
|
|
||||||
lastrowid = self.con.execute(sql, (jid_id, time_, kind) + tuple(kwargs.values())).lastrowid
|
lastrowid = self.con.execute(
|
||||||
|
sql, (account_id, jid_id, time_, kind) + tuple(kwargs.values())).lastrowid
|
||||||
|
|
||||||
log.info('Insert into DB: jid: %s, time: %s, kind: %s, stanza_id: %s',
|
log.info('Insert into DB: jid: %s, time: %s, kind: %s, stanza_id: %s',
|
||||||
jid, time_, kind, kwargs.get('stanza_id', None))
|
jid, time_, kind, kwargs.get('stanza_id', None))
|
||||||
|
|
|
@ -141,7 +141,8 @@ class ConnectionArchive313:
|
||||||
if duplicate:
|
if duplicate:
|
||||||
# dont propagate the event further
|
# dont propagate the event further
|
||||||
return True
|
return True
|
||||||
app.logger.insert_into_logs(obj.with_,
|
app.logger.insert_into_logs(self.name,
|
||||||
|
obj.with_,
|
||||||
obj.timestamp,
|
obj.timestamp,
|
||||||
obj.kind,
|
obj.kind,
|
||||||
unread=False,
|
unread=False,
|
||||||
|
|
|
@ -117,7 +117,7 @@ class ChatControlSession(stanza_session.EncryptedStanzaSession):
|
||||||
jid = obj.jid
|
jid = obj.jid
|
||||||
|
|
||||||
obj.msg_log_id = app.logger.insert_into_logs(
|
obj.msg_log_id = app.logger.insert_into_logs(
|
||||||
jid, obj.timestamp, log_type,
|
self.conn.name, jid, obj.timestamp, log_type,
|
||||||
message=msg_to_log,
|
message=msg_to_log,
|
||||||
subject=obj.subject,
|
subject=obj.subject,
|
||||||
additional_data=obj.additional_data,
|
additional_data=obj.additional_data,
|
||||||
|
|
Loading…
Reference in New Issue