summaryrefslogtreecommitdiff
path: root/ATRI/plugins/status
diff options
context:
space:
mode:
Diffstat (limited to 'ATRI/plugins/status')
-rw-r--r--ATRI/plugins/status/__init__.py6
-rw-r--r--ATRI/plugins/status/data_source.py11
2 files changed, 10 insertions, 7 deletions
diff --git a/ATRI/plugins/status/__init__.py b/ATRI/plugins/status/__init__.py
index 888a0a7..0567bb4 100644
--- a/ATRI/plugins/status/__init__.py
+++ b/ATRI/plugins/status/__init__.py
@@ -6,7 +6,6 @@ from .data_source import IsSurvive
ping = IsSurvive().on_command("/ping", "检测bot简单信息处理速度")
-
@ping.handle()
async def _ping(bot: Bot, event: MessageEvent):
await ping.finish(IsSurvive.ping())
@@ -14,15 +13,18 @@ async def _ping(bot: Bot, event: MessageEvent):
status = IsSurvive().on_command("/status", "查看运行资源占用")
-
@status.handle()
async def _status(bot: Bot, event: MessageEvent):
msg, _ = IsSurvive.get_status()
await status.finish(msg)
+info_msg = "アトリは高性能ですから!"
+
+
@scheduler.scheduled_job("interval", minutes=10, misfire_grace_time=15)
async def _status_checking():
+ global info_msg
msg, stat = IsSurvive().get_status()
if not stat:
await status.finish(msg)
diff --git a/ATRI/plugins/status/data_source.py b/ATRI/plugins/status/data_source.py
index 189f568..c353313 100644
--- a/ATRI/plugins/status/data_source.py
+++ b/ATRI/plugins/status/data_source.py
@@ -14,13 +14,14 @@ __doc__ = """
class IsSurvive(Service):
+
def __init__(self):
Service.__init__(self, "状态", __doc__, rule=is_in_service("状态"))
@staticmethod
def ping() -> str:
return "I'm fine."
-
+
@staticmethod
def get_status():
log.info("开始检查资源消耗...")
@@ -30,7 +31,7 @@ class IsSurvive(Service):
disk = psutil.disk_usage("/").percent
inteSENT = psutil.net_io_counters().bytes_sent / 1000000 # type: ignore
inteRECV = psutil.net_io_counters().bytes_recv / 1000000 # type: ignore
-
+
now = time.time()
boot = psutil.boot_time()
up_time = str(
@@ -39,7 +40,7 @@ class IsSurvive(Service):
)
except GetStatusError:
raise GetStatusError("Failed to get status.")
-
+
msg = "アトリは、高性能ですから!"
if cpu > 90: # type: ignore
msg = "咱感觉有些头晕..."
@@ -56,7 +57,7 @@ class IsSurvive(Service):
else:
log.info("资源占用正常")
is_ok = True
-
+
msg0 = (
"Self status:\n"
f"* CPU: {cpu}%\n"
@@ -66,5 +67,5 @@ class IsSurvive(Service):
f"* netRECV: {inteRECV}MB\n"
f"* Runtime: {up_time}\n"
) + msg
-
+
return msg0, is_ok