perf: 去掉 tunnel 和 command 会话的监控

pull/9614/head^2
Eric 2023-02-17 20:10:17 +08:00 committed by Jiangjie.Bai
parent 2877ea0e3b
commit 40b49e258e
3 changed files with 12 additions and 6 deletions

View File

@ -59,3 +59,9 @@ class PublishStatus(TextChoices):
success = 'success', _("Success")
failed = 'failed', _("Failed")
mismatch = 'mismatch', _("Mismatch")
class SessionType(TextChoices):
normal = 'normal', _('Normal')
tunnel = 'tunnel', _('Tunnel')
command = 'command', _('Command')

View File

@ -15,6 +15,7 @@ from assets.models import Asset
from common.utils import get_object_or_none, lazyproperty
from orgs.mixins.models import OrgModelMixin
from terminal.backends import get_multi_command_storage
from terminal.const import SessionType
from users.models import User
@ -124,6 +125,9 @@ class Session(OrgModelMixin):
return False
if self.login_from == self.LOGIN_FROM.RT:
return False
if self.type != SessionType.normal:
# 会话监控仅支持 normal不支持 tunnel 和 command
return False
if self.protocol in [
Protocol.ssh, Protocol.vnc, Protocol.rdp,
Protocol.telnet, Protocol.k8s
@ -153,7 +157,7 @@ class Session(OrgModelMixin):
return None, e
if settings.SERVER_REPLAY_STORAGE:
from ..tasks import upload_session_replay_to_external_storage
from terminal.tasks import upload_session_replay_to_external_storage
upload_session_replay_to_external_storage.delay(str(self.id))
return name, None

View File

@ -1,10 +1,10 @@
from django.db import models
from django.utils.translation import ugettext_lazy as _
from rest_framework import serializers
from assets.const import Protocol
from common.serializers.fields import LabeledChoiceField
from orgs.mixins.serializers import BulkOrgResourceModelSerializer
from ..const import SessionType
from ..models import Session
__all__ = [
@ -13,10 +13,6 @@ __all__ = [
]
class SessionType(models.TextChoices):
normal = 'normal', _('Normal')
tunnel = 'tunnel', _('Tunnel')
command = 'command', _('Command')
class SessionSerializer(BulkOrgResourceModelSerializer):