perf: 修改core celery 组件状态 (#12684)

Co-authored-by: feng <1304903146@qq.com>
pull/12685/head
fit2bot 2024-02-22 14:47:26 +08:00 committed by GitHub
parent d4721e90d5
commit d4e53be7ce
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 9 additions and 4 deletions

View File

@ -19,6 +19,7 @@ logger = get_logger(__file__)
class TerminalStatusMixin:
id: str
type: str
ALIVE_KEY = 'TERMINAL_ALIVE_{}'
status_set: models.Manager
@ -29,7 +30,7 @@ class TerminalStatusMixin:
@lazyproperty
def load(self):
from ...utils import ComputeLoadUtil
return ComputeLoadUtil.compute_load(self.last_stat)
return ComputeLoadUtil.compute_load(self.last_stat, self.type)
@property
def is_alive(self):

View File

@ -3,7 +3,7 @@
from itertools import groupby
from common.utils import get_logger
from terminal.const import ComponentLoad
from terminal.const import ComponentLoad, TerminalType
logger = get_logger(__name__)
@ -38,9 +38,13 @@ class ComputeLoadUtil:
return system_status
@classmethod
def compute_load(cls, stat):
def compute_load(cls, stat, terminal_type=None):
if not stat:
return ComponentLoad.offline
# TODO The core component and celery component will return true for the time being.
if terminal_type in [TerminalType.core, TerminalType.celery]:
return ComponentLoad.normal
else:
return ComponentLoad.offline
system_status_values = cls._compute_system_stat_status(stat).values()
if ComponentLoad.critical in system_status_values:
return ComponentLoad.critical