mirror of
https://github.com/xuthus83/LittlePaimon.git
synced 2024-12-16 13:40:53 +08:00
54 lines
1.6 KiB
Python
54 lines
1.6 KiB
Python
import asyncio
|
|
import datetime
|
|
|
|
import psutil
|
|
from nonebot import get_bot
|
|
|
|
from . import DRIVER, NICKNAME
|
|
|
|
start_time: str
|
|
|
|
|
|
async def get_status():
|
|
status_result = {
|
|
'nickname': NICKNAME
|
|
}
|
|
try:
|
|
status_result['start_time'] = start_time
|
|
except Exception:
|
|
status_result['start_time'] = '未知'
|
|
try:
|
|
bot = get_bot()
|
|
bot_status = await bot.get_status()
|
|
status_result['bot_id'] = bot.self_id
|
|
if bot_status := bot_status.get('stat'):
|
|
status_result['msg_received'] = bot_status.get('message_received', '未知')
|
|
status_result['msg_sent'] = bot_status.get('message_sent', '未知')
|
|
except Exception:
|
|
status_result['bot_id'] = '未知'
|
|
status_result['msg_received'] = '未知'
|
|
status_result['msg_sent'] = '未知'
|
|
|
|
status_result['system_start_time'] = datetime.datetime.fromtimestamp(psutil.boot_time()).strftime(
|
|
"%Y-%m-%d %H:%M:%S")
|
|
|
|
psutil.cpu_percent()
|
|
await asyncio.sleep(0.1)
|
|
cpu_percent = psutil.cpu_percent()
|
|
# cpu_count = psutil.cpu_count(logical=False)
|
|
# cpu_count_logical = psutil.cpu_count()
|
|
# cpu_freq = psutil.cpu_freq()
|
|
ram_stat = psutil.virtual_memory()
|
|
swap_stat = psutil.swap_memory()
|
|
status_result['cpu_percent'] = f'{cpu_percent}%'
|
|
status_result['ram_percent'] = f'{ram_stat.percent}%'
|
|
status_result['swap_percent'] = f'{swap_stat.percent}%'
|
|
|
|
return status_result
|
|
|
|
|
|
@DRIVER.on_startup
|
|
async def start_up():
|
|
global start_time
|
|
start_time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
|