mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-09-07 18:31:04 +00:00
feat: 重构操作日志 (#8941)
* feat:重构操作日志模块 * feat: 改密计划增加操作日志记录 * feat: 支持操作日志接入ES,且接口limit支持自定义限制大小 * feat:翻译 * feat: 生成迁移文件 * feat: 优化迁移文件 * feat: 优化多对多日志记录 * feat: 命令存储ES部分和日志存储ES部分代码优化 * feat: 优化敏感字段脱敏 Co-authored-by: Jiangjie.Bai <bugatti_it@163.com>
This commit is contained in:
@@ -1,16 +1,23 @@
|
||||
from django.db import models
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from common.db.models import JMSModel
|
||||
from common.db.models import JMSModel, CASCADE_SIGNAL_SKIP
|
||||
|
||||
__all__ = ('SystemMsgSubscription', 'UserMsgSubscription')
|
||||
|
||||
|
||||
class UserMsgSubscription(JMSModel):
|
||||
user = models.OneToOneField('users.User', related_name='user_msg_subscription', on_delete=models.CASCADE)
|
||||
receive_backends = models.JSONField(default=list)
|
||||
user = models.OneToOneField(
|
||||
'users.User', related_name='user_msg_subscription', on_delete=CASCADE_SIGNAL_SKIP,
|
||||
verbose_name=_('User')
|
||||
)
|
||||
receive_backends = models.JSONField(default=list, verbose_name=_('receive backend'))
|
||||
|
||||
class Meta:
|
||||
verbose_name = _('User message')
|
||||
|
||||
def __str__(self):
|
||||
return f'{self.user} subscription: {self.receive_backends}'
|
||||
return _('{} subscription').format(self.user)
|
||||
|
||||
|
||||
class SystemMsgSubscription(JMSModel):
|
||||
@@ -21,11 +28,19 @@ class SystemMsgSubscription(JMSModel):
|
||||
|
||||
message_type_label = ''
|
||||
|
||||
def __str__(self):
|
||||
return f'{self.message_type}'
|
||||
class Meta:
|
||||
verbose_name = _('System message')
|
||||
|
||||
def __repr__(self):
|
||||
return self.__str__()
|
||||
def set_message_type_label(self):
|
||||
# 采用手动调用,没设置成 property 的方式
|
||||
# 因为目前只有界面修改时会用到这个属性,避免实例化时占用资源计算
|
||||
from ..notifications import system_msgs
|
||||
msg_label = ''
|
||||
for msg in system_msgs:
|
||||
if msg.get('message_type') == self.message_type:
|
||||
msg_label = msg.get('message_type_label', '')
|
||||
break
|
||||
self.message_type_label = msg_label
|
||||
|
||||
@property
|
||||
def receivers(self):
|
||||
@@ -47,3 +62,9 @@ class SystemMsgSubscription(JMSModel):
|
||||
receviers.append(recevier)
|
||||
|
||||
return receviers
|
||||
|
||||
def __str__(self):
|
||||
return f'{self.message_type_label}' or f'{self.message_type}'
|
||||
|
||||
def __repr__(self):
|
||||
return self.__str__()
|
||||
|
Reference in New Issue
Block a user