{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.132543", "seconds": 0.132543}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 45171, "name": "MainProcess"}, "thread": {"id": 140526334072640, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:26:49.172834+08:00", "timestamp": 1750004809.172834}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.095836", "seconds": 0.095836}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 45750, "name": "MainProcess"}, "thread": {"id": 140171042105152, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:28:08.447556+08:00", "timestamp": 1750004888.447556}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:03.420656", "seconds": 123.420656}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 45171, "name": "MainProcess"}, "thread": {"id": 140526334072640, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:28:52.460947+08:00", "timestamp": 1750004932.460947}}}
{"text": "用户操作: test(1) - command_list\n", "record": {"elapsed": {"repr": "0:02:03.421304", "seconds": 123.421304}, "exception": null, "extra": {"user_id": 1, "username": "test", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 45171, "name": "MainProcess"}, "thread": {"id": 140526334072640, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:28:52.461595+08:00", "timestamp": 1750004932.461595}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:03.522054", "seconds": 123.522054}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10155534744262695, "result_length": 69}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 45171, "name": "MainProcess"}, "thread": {"id": 140526334072640, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:28:52.562345+08:00", "timestamp": 1750004932.562345}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:13.966189", "seconds": 133.966189}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "args": ["test", "test", "test1"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 45171, "name": "MainProcess"}, "thread": {"id": 140526334072640, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:03.006480+08:00", "timestamp": 1750004943.00648}}}
{"text": "用户操作: test(1) - command_create_chat\n", "record": {"elapsed": {"repr": "0:02:13.966597", "seconds": 133.966597}, "exception": null, "extra": {"user_id": 1, "username": "test", "action": "command_create_chat", "command_args": ["test", "test", "test1"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test(1) - command_create_chat", "module": "logger", "name": "shared.logger", "process": {"id": 45171, "name": "MainProcess"}, "thread": {"id": 140526334072640, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:03.006888+08:00", "timestamp": 1750004943.006888}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:14.067330", "seconds": 134.06733}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "duration": 0.10122919082641602, "result_length": 34}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 45171, "name": "MainProcess"}, "thread": {"id": 140526334072640, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:03.107621+08:00", "timestamp": 1750004943.107621}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:21.246782", "seconds": 141.246782}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 45171, "name": "MainProcess"}, "thread": {"id": 140526334072640, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:10.287073+08:00", "timestamp": 1750004950.287073}}}
{"text": "用户操作: test(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:02:21.247015", "seconds": 141.247015}, "exception": null, "extra": {"user_id": 1, "username": "test", "action": "command_enter_chat", "command_args": ["test"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 45171, "name": "MainProcess"}, "thread": {"id": 140526334072640, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:10.287306+08:00", "timestamp": 1750004950.287306}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:21.347495", "seconds": 141.347495}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10074305534362793, "result_length": 13}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 45171, "name": "MainProcess"}, "thread": {"id": 140526334072640, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:10.387786+08:00", "timestamp": 1750004950.387786}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:24.225398", "seconds": 144.225398}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-s": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 45171, "name": "MainProcess"}, "thread": {"id": 140526334072640, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:13.265689+08:00", "timestamp": 1750004953.265689}}}
{"text": "用户操作: test(1) - command_list\n", "record": {"elapsed": {"repr": "0:02:24.225754", "seconds": 144.225754}, "exception": null, "extra": {"user_id": 1, "username": "test", "action": "command_list", "command_args": [], "command_options": {"-s": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 45171, "name": "MainProcess"}, "thread": {"id": 140526334072640, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:13.266045+08:00", "timestamp": 1750004953.266045}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:24.326380", "seconds": 144.32638}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10104012489318848, "result_length": 40}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 45171, "name": "MainProcess"}, "thread": {"id": 140526334072640, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:13.366671+08:00", "timestamp": 1750004953.366671}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:15.004562", "seconds": 75.004562}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-c": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 45750, "name": "MainProcess"}, "thread": {"id": 140171042105152, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:23.356282+08:00", "timestamp": 1750004963.356282}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:01:15.005079", "seconds": 75.005079}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-c": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 45750, "name": "MainProcess"}, "thread": {"id": 140171042105152, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:23.356799+08:00", "timestamp": 1750004963.356799}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:15.106135", "seconds": 75.106135}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10163521766662598, "result_length": 35}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 45750, "name": "MainProcess"}, "thread": {"id": 140171042105152, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:23.457855+08:00", "timestamp": 1750004963.457855}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:17.525815", "seconds": 77.525815}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 45750, "name": "MainProcess"}, "thread": {"id": 140171042105152, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:25.877535+08:00", "timestamp": 1750004965.877535}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:01:17.528457", "seconds": 77.528457}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-g": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 45750, "name": "MainProcess"}, "thread": {"id": 140171042105152, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:25.880177+08:00", "timestamp": 1750004965.880177}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:17.629295", "seconds": 77.629295}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10354256629943848, "result_length": 49}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 45750, "name": "MainProcess"}, "thread": {"id": 140171042105152, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:29:25.981015+08:00", "timestamp": 1750004965.981015}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.104108", "seconds": 0.104108}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 46904, "name": "MainProcess"}, "thread": {"id": 140235114088256, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:31:27.324109+08:00", "timestamp": 1750005087.324109}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.067299", "seconds": 0.067299}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 46970, "name": "MainProcess"}, "thread": {"id": 139783209084736, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:31:32.586027+08:00", "timestamp": 1750005092.586027}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:11.104573", "seconds": 11.104573}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 46970, "name": "MainProcess"}, "thread": {"id": 139783209084736, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:31:43.623301+08:00", "timestamp": 1750005103.623301}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:00:11.104962", "seconds": 11.104962}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-g": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 46970, "name": "MainProcess"}, "thread": {"id": 139783209084736, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:31:43.623690+08:00", "timestamp": 1750005103.62369}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:11.205886", "seconds": 11.205886}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10139775276184082, "result_length": 49}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 46970, "name": "MainProcess"}, "thread": {"id": 139783209084736, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:31:43.724614+08:00", "timestamp": 1750005103.724614}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:17.381253", "seconds": 17.381253}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 46970, "name": "MainProcess"}, "thread": {"id": 139783209084736, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:31:49.899981+08:00", "timestamp": 1750005109.899981}}}
{"text": "用户操作: test1(2) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:00:17.381621", "seconds": 17.381621}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_enter_chat", "command_args": ["test"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 46970, "name": "MainProcess"}, "thread": {"id": 139783209084736, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:31:49.900349+08:00", "timestamp": 1750005109.900349}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:00:17.482356", "seconds": 17.482356}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10116362571716309, "error": "您不是聊天组 'test' 的成员"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 342, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 46970, "name": "MainProcess"}, "thread": {"id": 139783209084736, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:31:50.001084+08:00", "timestamp": 1750005110.001084}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.068935", "seconds": 0.068935}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 55766, "name": "MainProcess"}, "thread": {"id": 140626452883264, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:53:56.373518+08:00", "timestamp": 1750006436.373518}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.068201", "seconds": 0.068201}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:54:18.447112+08:00", "timestamp": 1750006458.447112}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.068899", "seconds": 0.068899}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:55:17.817160+08:00", "timestamp": 1750006517.81716}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:00:04.342969", "seconds": 4.342969}, "exception": null, "extra": {"name": "client.commands", "command": "sigin", "input": "/sigin"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 312, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:55:22.091230+08:00", "timestamp": 1750006522.09123}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:38.015795", "seconds": 98.015795}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:55:56.394706+08:00", "timestamp": 1750006556.394706}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:01:38.016554", "seconds": 98.016554}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:55:56.395465+08:00", "timestamp": 1750006556.395465}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:38.117865", "seconds": 98.117865}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10218310356140137, "result_length": 70}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:55:56.496776+08:00", "timestamp": 1750006556.496776}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:40.749130", "seconds": 100.74913}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-s": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:55:59.128041+08:00", "timestamp": 1750006559.128041}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:01:40.749500", "seconds": 100.7495}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-s": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:55:59.128411+08:00", "timestamp": 1750006559.128411}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:40.850324", "seconds": 100.850324}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10124754905700684, "result_length": 56}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:55:59.229235+08:00", "timestamp": 1750006559.229235}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:43.979700", "seconds": 103.9797}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:02.358611+08:00", "timestamp": 1750006562.358611}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:01:43.980059", "seconds": 103.980059}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-g": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:02.358970+08:00", "timestamp": 1750006562.35897}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:44.080745", "seconds": 104.080745}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10110139846801758, "result_length": 29}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:02.459656+08:00", "timestamp": 1750006562.459656}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:04.656902", "seconds": 124.656902}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "args": ["test0_g", "test0", "test1"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:23.035813+08:00", "timestamp": 1750006583.035813}}}
{"text": "用户操作: test0(1) - command_create_chat\n", "record": {"elapsed": {"repr": "0:02:04.657187", "seconds": 124.657187}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_create_chat", "command_args": ["test0_g", "test0", "test1"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_create_chat", "module": "logger", "name": "shared.logger", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:23.036098+08:00", "timestamp": 1750006583.036098}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:04.757878", "seconds": 124.757878}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "duration": 0.10103368759155273, "result_length": 38}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:23.136789+08:00", "timestamp": 1750006583.136789}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:11.262005", "seconds": 131.262005}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:29.640916+08:00", "timestamp": 1750006589.640916}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:02:11.262437", "seconds": 131.262437}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:29.641348+08:00", "timestamp": 1750006589.641348}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:11.363411", "seconds": 131.363411}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10149002075195312, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:29.742322+08:00", "timestamp": 1750006589.742322}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:13.769517", "seconds": 133.769517}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-s": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:32.148428+08:00", "timestamp": 1750006592.148428}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:02:13.769893", "seconds": 133.769893}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-s": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:32.148804+08:00", "timestamp": 1750006592.148804}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:13.870785", "seconds": 133.870785}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10131216049194336, "result_length": 57}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:32.249696+08:00", "timestamp": 1750006592.249696}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:20.454559", "seconds": 80.454559}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:38.202820+08:00", "timestamp": 1750006598.20282}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:01:20.455108", "seconds": 80.455108}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-g": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:38.203369+08:00", "timestamp": 1750006598.203369}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:20.555950", "seconds": 80.55595}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10150933265686035, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:38.304211+08:00", "timestamp": 1750006598.304211}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:24.151276", "seconds": 84.151276}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-c": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:41.899537+08:00", "timestamp": 1750006601.899537}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:01:24.151656", "seconds": 84.151656}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-c": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:41.899917+08:00", "timestamp": 1750006601.899917}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:24.252441", "seconds": 84.252441}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10120964050292969, "result_length": 63}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:42.000702+08:00", "timestamp": 1750006602.000702}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:36.470961", "seconds": 96.470961}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:54.219222+08:00", "timestamp": 1750006614.219222}}}
{"text": "用户操作: test1(2) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:01:36.471327", "seconds": 96.471327}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:54.219588+08:00", "timestamp": 1750006614.219588}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:36.572308", "seconds": 96.572308}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10139775276184082, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:54.320569+08:00", "timestamp": 1750006614.320569}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:40.485636", "seconds": 100.485636}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-f": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:58.233897+08:00", "timestamp": 1750006618.233897}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:01:40.485923", "seconds": 100.485923}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-f": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:58.234184+08:00", "timestamp": 1750006618.234184}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:40.586658", "seconds": 100.586658}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10105085372924805, "result_length": 9}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:56:58.334919+08:00", "timestamp": 1750006618.334919}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:46.437416", "seconds": 106.437416}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:57:04.185677+08:00", "timestamp": 1750006624.185677}}}
{"text": "用户操作: test1(2) - command_recv_files\n", "record": {"elapsed": {"repr": "0:01:46.438514", "seconds": 106.438514}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_recv_files", "command_args": [], "command_options": {"-l": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:57:04.186775+08:00", "timestamp": 1750006624.186775}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:46.539304", "seconds": 106.539304}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.10193729400634766, "result_length": 9}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:57:04.287565+08:00", "timestamp": 1750006624.287565}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:51.119969", "seconds": 171.119969}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "args": ["/home/student/Code/CN/Chat-Room/test_file.txt"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:58:08.868230+08:00", "timestamp": 1750006688.86823}}}
{"text": "用户操作: test1(2) - command_send_files\n", "record": {"elapsed": {"repr": "0:02:51.120946", "seconds": 171.120946}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_send_files", "command_args": ["/home/student/Code/CN/Chat-Room/test_file.txt"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_send_files", "module": "logger", "name": "shared.logger", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:58:08.869207+08:00", "timestamp": 1750006688.869207}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:51.324936", "seconds": 171.324936}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "duration": 0.20744633674621582, "result_length": 25}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 56231, "name": "MainProcess"}, "thread": {"id": 139839939086144, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:58:09.073197+08:00", "timestamp": 1750006689.073197}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:04.744346", "seconds": 244.744346}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:58:23.123257+08:00", "timestamp": 1750006703.123257}}}
{"text": "用户操作: test0(1) - command_recv_files\n", "record": {"elapsed": {"repr": "0:04:04.747282", "seconds": 244.747282}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_recv_files", "command_args": [], "command_options": {"-l": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:58:23.126193+08:00", "timestamp": 1750006703.126193}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:04.848738", "seconds": 244.848738}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.10449433326721191, "result_length": 80}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:58:23.227649+08:00", "timestamp": 1750006703.227649}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:21.562262", "seconds": 261.562262}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-n": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:58:39.941173+08:00", "timestamp": 1750006719.941173}}}
{"text": "用户操作: test0(1) - command_recv_files\n", "record": {"elapsed": {"repr": "0:04:21.562995", "seconds": 261.562995}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_recv_files", "command_args": [], "command_options": {"-n": "1"}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:58:39.941906+08:00", "timestamp": 1750006719.941906}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:23.767416", "seconds": 263.767416}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 2.205195665359497, "result_length": 44}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 55974, "name": "MainProcess"}, "thread": {"id": 140625137403712, "name": "MainThread"}, "time": {"repr": "2025-06-16 00:58:42.146327+08:00", "timestamp": 1750006722.146327}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.090384", "seconds": 0.090384}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 43261, "name": "MainProcess"}, "thread": {"id": 139857551124288, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:26:28.432587+08:00", "timestamp": 1750083988.432587}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:39.087284", "seconds": 39.087284}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["public"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 43261, "name": "MainProcess"}, "thread": {"id": 139857551124288, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:27:07.429487+08:00", "timestamp": 1750084027.429487}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:00:39.087774", "seconds": 39.087774}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["public"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 43261, "name": "MainProcess"}, "thread": {"id": 139857551124288, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:27:07.429977+08:00", "timestamp": 1750084027.429977}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:39.188772", "seconds": 39.188772}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10160541534423828, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 43261, "name": "MainProcess"}, "thread": {"id": 139857551124288, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:27:07.530975+08:00", "timestamp": 1750084027.530975}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.082335", "seconds": 0.082335}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 43699, "name": "MainProcess"}, "thread": {"id": 140598858000192, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:27:27.433548+08:00", "timestamp": 1750084047.433548}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.076898", "seconds": 0.076898}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:27:35.913834+08:00", "timestamp": 1750084055.913834}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:35.260973", "seconds": 35.260973}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:28:11.097909+08:00", "timestamp": 1750084091.097909}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:00:35.261406", "seconds": 35.261406}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:28:11.098342+08:00", "timestamp": 1750084091.098342}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:35.362681", "seconds": 35.362681}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10176634788513184, "result_length": 70}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:28:11.199617+08:00", "timestamp": 1750084091.199617}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:10.991349", "seconds": 130.991349}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "args": ["test0_g", "test0", "test1"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 43261, "name": "MainProcess"}, "thread": {"id": 139857551124288, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:28:39.333552+08:00", "timestamp": 1750084119.333552}}}
{"text": "用户操作: test0(1) - command_create_chat\n", "record": {"elapsed": {"repr": "0:02:10.991850", "seconds": 130.99185}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_create_chat", "command_args": ["test0_g", "test0", "test1"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_create_chat", "module": "logger", "name": "shared.logger", "process": {"id": 43261, "name": "MainProcess"}, "thread": {"id": 139857551124288, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:28:39.334053+08:00", "timestamp": 1750084119.334053}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:11.092677", "seconds": 131.092677}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "duration": 0.1014561653137207, "result_length": 38}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 43261, "name": "MainProcess"}, "thread": {"id": 139857551124288, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:28:39.434880+08:00", "timestamp": 1750084119.43488}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:18.943732", "seconds": 138.943732}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 43261, "name": "MainProcess"}, "thread": {"id": 139857551124288, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:28:47.285935+08:00", "timestamp": 1750084127.285935}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:02:18.944100", "seconds": 138.9441}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 43261, "name": "MainProcess"}, "thread": {"id": 139857551124288, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:28:47.286303+08:00", "timestamp": 1750084127.286303}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:19.044754", "seconds": 139.044754}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10106945037841797, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 43261, "name": "MainProcess"}, "thread": {"id": 139857551124288, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:28:47.386957+08:00", "timestamp": 1750084127.386957}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:18.199389", "seconds": 78.199389}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-c": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:28:54.036325+08:00", "timestamp": 1750084134.036325}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:01:18.199770", "seconds": 78.19977}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-c": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:28:54.036706+08:00", "timestamp": 1750084134.036706}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:18.300520", "seconds": 78.30052}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10116124153137207, "result_length": 63}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:28:54.137456+08:00", "timestamp": 1750084134.137456}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:31.546031", "seconds": 91.546031}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:29:07.382967+08:00", "timestamp": 1750084147.382967}}}
{"text": "用户操作: test1(2) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:01:31.546406", "seconds": 91.546406}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:29:07.383342+08:00", "timestamp": 1750084147.383342}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:31.647045", "seconds": 91.647045}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10105681419372559, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:29:07.483981+08:00", "timestamp": 1750084147.483981}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:38.216461", "seconds": 98.216461}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:29:14.053397+08:00", "timestamp": 1750084154.053397}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:01:38.216813", "seconds": 98.216813}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-g": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:29:14.053749+08:00", "timestamp": 1750084154.053749}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:38.317581", "seconds": 98.317581}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10114812850952148, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:29:14.154517+08:00", "timestamp": 1750084154.154517}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:43.131541", "seconds": 103.131541}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-c": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 317, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:29:18.968477+08:00", "timestamp": 1750084158.968477}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:01:43.131895", "seconds": 103.131895}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-c": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:29:18.968831+08:00", "timestamp": 1750084158.968831}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:43.232657", "seconds": 103.232657}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.1011345386505127, "result_length": 63}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 340, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 43782, "name": "MainProcess"}, "thread": {"id": 139922200151872, "name": "MainThread"}, "time": {"repr": "2025-06-16 22:29:19.069593+08:00", "timestamp": 1750084159.069593}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.088944", "seconds": 0.088944}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 12020, "name": "MainProcess"}, "thread": {"id": 140594639869760, "name": "MainThread"}, "time": {"repr": "2025-06-17 10:59:11.864077+08:00", "timestamp": 1750129151.864077}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.080076", "seconds": 0.080076}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 12894, "name": "MainProcess"}, "thread": {"id": 140299345020736, "name": "MainThread"}, "time": {"repr": "2025-06-17 10:59:57.569061+08:00", "timestamp": 1750129197.569061}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:04:35.781638", "seconds": 275.781638}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "input": "/ban -u"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 312, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 12894, "name": "MainProcess"}, "thread": {"id": 140299345020736, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:04:33.270623+08:00", "timestamp": 1750129473.270623}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:04:51.703182", "seconds": 291.703182}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "input": "/modify -u"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 312, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 12894, "name": "MainProcess"}, "thread": {"id": 140299345020736, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:04:49.192167+08:00", "timestamp": 1750129489.192167}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:04:55.567383", "seconds": 295.567383}, "exception": null, "extra": {"name": "client.commands", "command": "add", "input": "/add -u"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 312, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 12894, "name": "MainProcess"}, "thread": {"id": 140299345020736, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:04:53.056368+08:00", "timestamp": 1750129493.056368}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:05:05.486687", "seconds": 305.486687}, "exception": null, "extra": {"name": "client.commands", "command": "del", "input": "/del -u"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 312, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 12894, "name": "MainProcess"}, "thread": {"id": 140299345020736, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:05:02.975672+08:00", "timestamp": 1750129502.975672}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:05:15.368292", "seconds": 315.368292}, "exception": null, "extra": {"name": "client.commands", "command": "free", "input": "/free -l"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 312, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 12894, "name": "MainProcess"}, "thread": {"id": 140299345020736, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:05:12.857277+08:00", "timestamp": 1750129512.857277}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.082594", "seconds": 0.082594}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 17589, "name": "MainProcess"}, "thread": {"id": 139668684949312, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:20:28.802220+08:00", "timestamp": 1750130428.80222}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.080107", "seconds": 0.080107}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:20:43.178428+08:00", "timestamp": 1750130443.178428}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:16.526770", "seconds": 16.52677}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:20:59.625091+08:00", "timestamp": 1750130459.625091}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:00:16.527304", "seconds": 16.527304}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.0006935596466064453, "error": "用法: /free -u <用户ID/用户名> 或 /free -g <群组ID/群组名> 或 /free -l"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:20:59.625625+08:00", "timestamp": 1750130459.625625}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:24.631314", "seconds": 24.631314}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:21:07.729635+08:00", "timestamp": 1750130467.729635}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:00:24.631557", "seconds": 24.631557}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 0.0002994537353515625, "error": "用法: /ban -u <用户ID/用户名> 或 /ban -g <群组ID/群组名>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:21:07.729878+08:00", "timestamp": 1750130467.729878}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:37.252328", "seconds": 37.252328}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:21:20.350649+08:00", "timestamp": 1750130480.350649}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:37.352914", "seconds": 37.352914}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10061907768249512, "result_length": 91}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:21:20.451235+08:00", "timestamp": 1750130480.451235}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:46.583774", "seconds": 46.583774}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:21:29.682095+08:00", "timestamp": 1750130489.682095}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:00:46.584266", "seconds": 46.584266}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 0.0005905628204345703, "error": "用法: /ban -u <用户ID/用户名> 或 /ban -g <群组ID/群组名>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:21:29.682587+08:00", "timestamp": 1750130489.682587}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:54.641858", "seconds": 54.641858}, "exception": null, "extra": {"name": "client.commands", "command": "add", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:21:37.740179+08:00", "timestamp": 1750130497.740179}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:00:54.642257", "seconds": 54.642257}, "exception": null, "extra": {"name": "client.commands", "command": "add", "duration": 0.0004646778106689453, "error": "用法: /add -u <用户名> <密码>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:21:37.740578+08:00", "timestamp": 1750130497.740578}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:05.226760", "seconds": 65.22676}, "exception": null, "extra": {"name": "client.commands", "command": "add", "args": ["1234qwer"], "options": {"-u": "test2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:21:48.325081+08:00", "timestamp": 1750130508.325081}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:01:05.227124", "seconds": 65.227124}, "exception": null, "extra": {"name": "client.commands", "command": "add", "duration": 0.0004401206970214844, "error": "用法: /add -u <用户名> <密码>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:21:48.325445+08:00", "timestamp": 1750130508.325445}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:20.537421", "seconds": 80.537421}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:22:03.635742+08:00", "timestamp": 1750130523.635742}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:01:20.537869", "seconds": 80.537869}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "duration": 0.0005340576171875, "error": "用法: /modify -u <用户ID> <字段> <新值> 或 /modify -g <群组ID> <字段> <新值>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:22:03.636190+08:00", "timestamp": 1750130523.63619}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:41.879083", "seconds": 101.879083}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "args": ["passwd", "1234qwer"], "options": {"-u": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:22:24.977404+08:00", "timestamp": 1750130544.977404}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:01:41.879469", "seconds": 101.879469}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "duration": 0.0004658699035644531, "error": "用法: /modify -u <用户ID> <字段> <新值> 或 /modify -g <群组ID> <字段> <新值>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 17707, "name": "MainProcess"}, "thread": {"id": 139675171264320, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:22:24.977790+08:00", "timestamp": 1750130544.97779}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.105619", "seconds": 0.105619}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 21144, "name": "MainProcess"}, "thread": {"id": 140531377559360, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:38:00.439107+08:00", "timestamp": 1750131480.439107}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:17.963624", "seconds": 17.963624}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 21144, "name": "MainProcess"}, "thread": {"id": 140531377559360, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:38:18.297112+08:00", "timestamp": 1750131498.297112}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:18.064500", "seconds": 18.0645}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10095500946044922, "result_length": 118}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 21144, "name": "MainProcess"}, "thread": {"id": 140531377559360, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:38:18.397988+08:00", "timestamp": 1750131498.397988}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.082754", "seconds": 0.082754}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 21309, "name": "MainProcess"}, "thread": {"id": 139681392031552, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:38:25.174360+08:00", "timestamp": 1750131505.17436}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:11.625557", "seconds": 71.625557}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 21144, "name": "MainProcess"}, "thread": {"id": 140531377559360, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:39:11.959045+08:00", "timestamp": 1750131551.959045}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:01:11.626075", "seconds": 71.626075}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 0.000640869140625, "error": "用法: /ban -u <用户ID/用户名> 或 /ban -g <群组ID/群组名>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 21144, "name": "MainProcess"}, "thread": {"id": 140531377559360, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:39:11.959563+08:00", "timestamp": 1750131551.959563}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:26.099519", "seconds": 86.099519}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "test1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 21144, "name": "MainProcess"}, "thread": {"id": 140531377559360, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:39:26.433007+08:00", "timestamp": 1750131566.433007}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:01:26.099877", "seconds": 86.099877}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 0.0004172325134277344, "error": "用法: /ban -u <用户ID/用户名> 或 /ban -g <群组ID/群组名>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 21144, "name": "MainProcess"}, "thread": {"id": 140531377559360, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:39:26.433365+08:00", "timestamp": 1750131566.433365}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:38.085769", "seconds": 98.085769}, "exception": null, "extra": {"name": "client.commands", "command": "add", "args": ["1234qwer"], "options": {"-u": "test2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 21144, "name": "MainProcess"}, "thread": {"id": 140531377559360, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:39:38.419257+08:00", "timestamp": 1750131578.419257}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:01:38.086192", "seconds": 98.086192}, "exception": null, "extra": {"name": "client.commands", "command": "add", "duration": 0.0005068778991699219, "error": "用法: /add -u <用户名> <密码>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 21144, "name": "MainProcess"}, "thread": {"id": 140531377559360, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:39:38.419680+08:00", "timestamp": 1750131578.41968}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:01:27.843740", "seconds": 87.84374}, "exception": null, "extra": {"name": "client.commands", "command": "exi", "input": "/exi"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 394, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 21309, "name": "MainProcess"}, "thread": {"id": 139681392031552, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:39:52.935346+08:00", "timestamp": 1750131592.935346}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.085140", "seconds": 0.08514}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:40:41.491831+08:00", "timestamp": 1750131641.491831}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:12.073948", "seconds": 12.073948}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:40:53.480639+08:00", "timestamp": 1750131653.480639}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:12.174539", "seconds": 12.174539}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10066580772399902, "result_length": 47}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:40:53.581230+08:00", "timestamp": 1750131653.58123}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.115283", "seconds": 0.115283}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 22086, "name": "MainProcess"}, "thread": {"id": 140364198422336, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:41:04.449376+08:00", "timestamp": 1750131664.449376}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:48.910195", "seconds": 48.910195}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:41:30.316886+08:00", "timestamp": 1750131690.316886}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:49.011540", "seconds": 49.01154}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10145878791809082, "result_length": 68}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:41:30.418231+08:00", "timestamp": 1750131690.418231}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:55.640677", "seconds": 55.640677}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:41:37.047368+08:00", "timestamp": 1750131697.047368}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:00:55.641764", "seconds": 55.641764}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 0.0037178993225097656, "error": "用法: /ban -u <用户ID/用户名> 或 /ban -g <群组ID/群组名>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:41:37.048455+08:00", "timestamp": 1750131697.048455}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:05.019046", "seconds": 65.019046}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "test0"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:41:46.425737+08:00", "timestamp": 1750131706.425737}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:01:05.019381", "seconds": 65.019381}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 0.0003924369812011719, "error": "用法: /ban -u <用户ID/用户名> 或 /ban -g <群组ID/群组名>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:41:46.426072+08:00", "timestamp": 1750131706.426072}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:13.467516", "seconds": 73.467516}, "exception": null, "extra": {"name": "client.commands", "command": "add", "args": ["1234qwer"], "options": {"-u": "test2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:41:54.874207+08:00", "timestamp": 1750131714.874207}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:01:13.467885", "seconds": 73.467885}, "exception": null, "extra": {"name": "client.commands", "command": "add", "duration": 0.00043773651123046875, "error": "用法: /add -u <用户名> <密码>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:41:54.874576+08:00", "timestamp": 1750131714.874576}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:32.954038", "seconds": 92.954038}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "args": ["username", "test"], "options": {"-u": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:42:14.360729+08:00", "timestamp": 1750131734.360729}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:01:32.954584", "seconds": 92.954584}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "duration": 0.0006387233734130859, "error": "用法: /modify -u <用户ID> <字段> <新值> 或 /modify -g <群组ID> <字段> <新值>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:42:14.361275+08:00", "timestamp": 1750131734.361275}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:42.393119", "seconds": 102.393119}, "exception": null, "extra": {"name": "client.commands", "command": "del", "args": [], "options": {"-u": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:42:23.799810+08:00", "timestamp": 1750131743.79981}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:01:42.393466", "seconds": 102.393466}, "exception": null, "extra": {"name": "client.commands", "command": "del", "duration": 0.00040340423583984375, "error": "用法: /del -u <用户ID> 或 /del -g <群组ID> 或 /del -f <文件ID>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:42:23.800157+08:00", "timestamp": 1750131743.800157}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:47.355020", "seconds": 107.35502}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 22086, "name": "MainProcess"}, "thread": {"id": 140364198422336, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:42:51.689113+08:00", "timestamp": 1750131771.689113}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:01:47.364975", "seconds": 107.364975}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 22086, "name": "MainProcess"}, "thread": {"id": 140364198422336, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:42:51.699068+08:00", "timestamp": 1750131771.699068}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:47.469736", "seconds": 107.469736}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.12152290344238281, "result_length": 68}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 22086, "name": "MainProcess"}, "thread": {"id": 140364198422336, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:42:51.803829+08:00", "timestamp": 1750131771.803829}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:48.150951", "seconds": 168.150951}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:43:29.557642+08:00", "timestamp": 1750131809.557642}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:02:48.178765", "seconds": 168.178765}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.03590226173400879, "error": "用法: /free -u <用户ID/用户名> 或 /free -g <群组ID/群组名> 或 /free -l"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 21954, "name": "MainProcess"}, "thread": {"id": 140186191886144, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:43:29.585456+08:00", "timestamp": 1750131809.585456}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:30.881697", "seconds": 150.881697}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 22086, "name": "MainProcess"}, "thread": {"id": 140364198422336, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:43:35.215790+08:00", "timestamp": 1750131815.21579}}}
{"text": "用户操作: test0(1) - command_free\n", "record": {"elapsed": {"repr": "0:02:30.895381", "seconds": 150.895381}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_free", "command_args": [], "command_options": {"-l": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_free", "module": "logger", "name": "shared.logger", "process": {"id": 22086, "name": "MainProcess"}, "thread": {"id": 140364198422336, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:43:35.229474+08:00", "timestamp": 1750131815.229474}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:02:30.897324", "seconds": 150.897324}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.022687435150146484, "error": "权限不足：需要管理员权限"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 22086, "name": "MainProcess"}, "thread": {"id": 140364198422336, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:43:35.231417+08:00", "timestamp": 1750131815.231417}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.111514", "seconds": 0.111514}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:53:24.621084+08:00", "timestamp": 1750132404.621084}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.078559", "seconds": 0.078559}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:53:31.869205+08:00", "timestamp": 1750132411.869205}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:29.020868", "seconds": 29.020868}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:54:00.811514+08:00", "timestamp": 1750132440.811514}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:29.121989", "seconds": 29.121989}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10126733779907227, "result_length": 68}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:54:00.912635+08:00", "timestamp": 1750132440.912635}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:48.060114", "seconds": 48.060114}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["public"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:54:12.569684+08:00", "timestamp": 1750132452.569684}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:00:48.060586", "seconds": 48.060586}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["public"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:54:12.570156+08:00", "timestamp": 1750132452.570156}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:48.161100", "seconds": 48.1611}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10110044479370117, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:54:12.670670+08:00", "timestamp": 1750132452.67067}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:04.163775", "seconds": 64.163775}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:54:35.954421+08:00", "timestamp": 1750132475.954421}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:05.796694", "seconds": 65.796694}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.6330013275146484, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:54:37.587340+08:00", "timestamp": 1750132477.58734}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:23.661059", "seconds": 83.661059}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:54:55.451705+08:00", "timestamp": 1750132495.451705}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:23.762464", "seconds": 83.762464}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10147428512573242, "result_length": 35}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:54:55.553110+08:00", "timestamp": 1750132495.55311}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:38.599604", "seconds": 98.599604}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-u": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:55:10.390250+08:00", "timestamp": 1750132510.39025}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:38.700507", "seconds": 98.700507}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10096454620361328, "result_length": 22}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:55:10.491153+08:00", "timestamp": 1750132510.491153}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:11.090180", "seconds": 191.09018}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "args": ["/home/student/Code/CN/Chat-Room/README.md"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:56:35.599750+08:00", "timestamp": 1750132595.59975}}}
{"text": "用户操作: test0(1) - command_send_files\n", "record": {"elapsed": {"repr": "0:03:11.096213", "seconds": 191.096213}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_send_files", "command_args": ["/home/student/Code/CN/Chat-Room/README.md"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_send_files", "module": "logger", "name": "shared.logger", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:56:35.605783+08:00", "timestamp": 1750132595.605783}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:11.298803", "seconds": 191.298803}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "duration": 0.21332955360412598, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:56:35.808373+08:00", "timestamp": 1750132595.808373}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:17.731576", "seconds": 197.731576}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:56:49.522222+08:00", "timestamp": 1750132609.522222}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:17.834875", "seconds": 197.834875}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.10340428352355957, "result_length": 78}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:56:49.625521+08:00", "timestamp": 1750132609.625521}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:34.514358", "seconds": 214.514358}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-n": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:57:06.305004+08:00", "timestamp": 1750132626.305004}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:37.690194", "seconds": 217.690194}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 3.1759140491485596, "result_length": 40}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:57:09.480840+08:00", "timestamp": 1750132629.48084}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:55.630016", "seconds": 235.630016}, "exception": null, "extra": {"name": "client.commands", "command": "del", "args": [], "options": {"-f": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:57:27.420662+08:00", "timestamp": 1750132647.420662}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:57.216581", "seconds": 237.216581}, "exception": null, "extra": {"name": "client.commands", "command": "del", "duration": 1.587723970413208, "result_length": 49}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:57:29.007227+08:00", "timestamp": 1750132649.007227}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:23.354011", "seconds": 263.354011}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:57:47.863581+08:00", "timestamp": 1750132667.863581}}}
{"text": "用户操作: test0(1) - command_recv_files\n", "record": {"elapsed": {"repr": "0:04:23.357269", "seconds": 263.357269}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_recv_files", "command_args": [], "command_options": {"-l": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:57:47.866839+08:00", "timestamp": 1750132667.866839}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:23.459488", "seconds": 263.459488}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.10552597045898438, "result_length": 9}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:57:47.969058+08:00", "timestamp": 1750132667.969058}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:30.631773", "seconds": 270.631773}, "exception": null, "extra": {"name": "client.commands", "command": "add", "args": ["1234qwer"], "options": {"-u": "test1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:58:02.422419+08:00", "timestamp": 1750132682.422419}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:30.735822", "seconds": 270.735822}, "exception": null, "extra": {"name": "client.commands", "command": "add", "duration": 0.10411834716796875, "result_length": 22}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:58:02.526468+08:00", "timestamp": 1750132682.526468}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:45.441990", "seconds": 285.44199}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:58:09.951560+08:00", "timestamp": 1750132689.95156}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:04:45.442426", "seconds": 285.442426}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:58:09.951996+08:00", "timestamp": 1750132689.951996}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:45.546181", "seconds": 285.546181}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10425186157226562, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:58:10.055751+08:00", "timestamp": 1750132690.055751}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:47.592497", "seconds": 287.592497}, "exception": null, "extra": {"name": "client.commands", "command": "del", "args": [], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:58:19.383143+08:00", "timestamp": 1750132699.383143}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:49.112070", "seconds": 289.11207}, "exception": null, "extra": {"name": "client.commands", "command": "del", "duration": 1.5196101665496826, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 11:58:20.902716+08:00", "timestamp": 1750132700.902716}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.117071", "seconds": 0.117071}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 26463, "name": "MainProcess"}, "thread": {"id": 139934031992640, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:00:35.586724+08:00", "timestamp": 1750132835.586724}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:00:16.103590", "seconds": 16.10359}, "exception": null, "extra": {"name": "client.commands", "command": "sigin", "input": "/sigin"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 394, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 26463, "name": "MainProcess"}, "thread": {"id": 139934031992640, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:00:51.573243+08:00", "timestamp": 1750132851.573243}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:08:16.834641", "seconds": 496.834641}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "args": ["test0_g", "test0", "test1"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:01:41.344211+08:00", "timestamp": 1750132901.344211}}}
{"text": "用户操作: test0(1) - command_create_chat\n", "record": {"elapsed": {"repr": "0:08:16.867871", "seconds": 496.867871}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_create_chat", "command_args": ["test0_g", "test0", "test1"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_create_chat", "module": "logger", "name": "shared.logger", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:01:41.377441+08:00", "timestamp": 1750132901.377441}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:08:16.986129", "seconds": 496.986129}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "duration": 0.1644132137298584, "result_length": 38}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:01:41.495699+08:00", "timestamp": 1750132901.495699}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:08:25.287849", "seconds": 505.287849}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:01:49.797419+08:00", "timestamp": 1750132909.797419}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:08:25.290489", "seconds": 505.290489}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:01:49.800059+08:00", "timestamp": 1750132909.800059}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:08:25.392207", "seconds": 505.392207}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10440611839294434, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24560, "name": "MainProcess"}, "thread": {"id": 139856393332544, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:01:49.901777+08:00", "timestamp": 1750132909.901777}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:22.864738", "seconds": 82.864738}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 26463, "name": "MainProcess"}, "thread": {"id": 139934031992640, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:01:58.334391+08:00", "timestamp": 1750132918.334391}}}
{"text": "用户操作: test1(3) - command_list\n", "record": {"elapsed": {"repr": "0:01:22.865288", "seconds": 82.865288}, "exception": null, "extra": {"user_id": 3, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-g": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(3) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 26463, "name": "MainProcess"}, "thread": {"id": 139934031992640, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:01:58.334941+08:00", "timestamp": 1750132918.334941}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:22.965730", "seconds": 82.96573}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10114121437072754, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 26463, "name": "MainProcess"}, "thread": {"id": 139934031992640, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:01:58.435383+08:00", "timestamp": 1750132918.435383}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:32.988801", "seconds": 92.988801}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 26463, "name": "MainProcess"}, "thread": {"id": 139934031992640, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:02:08.458454+08:00", "timestamp": 1750132928.458454}}}
{"text": "用户操作: test1(3) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:01:32.989227", "seconds": 92.989227}, "exception": null, "extra": {"user_id": 3, "username": "test1", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(3) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 26463, "name": "MainProcess"}, "thread": {"id": 139934031992640, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:02:08.458880+08:00", "timestamp": 1750132928.45888}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:33.089885", "seconds": 93.089885}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10116457939147949, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 26463, "name": "MainProcess"}, "thread": {"id": 139934031992640, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:02:08.559538+08:00", "timestamp": 1750132928.559538}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:09:23.890430", "seconds": 563.89043}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:02:55.681076+08:00", "timestamp": 1750132975.681076}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:09:24.039642", "seconds": 564.039642}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.1607646942138672, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:02:55.830288+08:00", "timestamp": 1750132975.830288}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:09:28.730273", "seconds": 568.730273}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:03:00.520919+08:00", "timestamp": 1750132980.520919}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:09:30.302858", "seconds": 570.302858}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.5726478099822998, "result_length": 23}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:03:02.093504+08:00", "timestamp": 1750132982.093504}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:09:42.015854", "seconds": 582.015854}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:03:13.806500+08:00", "timestamp": 1750132993.8065}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:09:42.121689", "seconds": 582.121689}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10503435134887695, "error": "用户 2 不存在"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:03:13.912335+08:00", "timestamp": 1750132993.912335}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:10:01.294240", "seconds": 601.29424}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:03:33.084886+08:00", "timestamp": 1750133013.084886}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:10:01.397018", "seconds": 601.397018}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10280966758728027, "result_length": 24}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 24620, "name": "MainProcess"}, "thread": {"id": 140125772678976, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:03:33.187664+08:00", "timestamp": 1750133013.187664}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.123974", "seconds": 0.123974}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:21:12.464071+08:00", "timestamp": 1750134072.464071}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.076797", "seconds": 0.076797}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769131054912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:21:38.971949+08:00", "timestamp": 1750134098.971949}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.077545", "seconds": 0.077545}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 30779, "name": "MainProcess"}, "thread": {"id": 140135422748480, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:21:42.992049+08:00", "timestamp": 1750134102.992049}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:06.332164", "seconds": 66.332164}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:22:18.672261+08:00", "timestamp": 1750134138.672261}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:06.433080", "seconds": 66.43308}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10103774070739746, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:22:18.773177+08:00", "timestamp": 1750134138.773177}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:13.308032", "seconds": 73.308032}, "exception": null, "extra": {"name": "client.commands", "command": "del", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:22:25.648129+08:00", "timestamp": 1750134145.648129}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:00:47.936879", "seconds": 47.936879}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-g", "message": "群组 test0_g (ID: 2) 已被删除"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769064920768, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 12:22:26.832031+08:00", "timestamp": 1750134146.832031}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:00:43.917631", "seconds": 43.917631}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-g", "message": "群组 test0_g (ID: 2) 已被删除"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 30779, "name": "MainProcess"}, "thread": {"id": 140135286945472, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 12:22:26.832135+08:00", "timestamp": 1750134146.832135}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:14.579731", "seconds": 74.579731}, "exception": null, "extra": {"name": "client.commands", "command": "del", "duration": 1.2717392444610596, "result_length": 23}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:22:26.919828+08:00", "timestamp": 1750134146.919828}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:16.961856", "seconds": 76.961856}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:22:29.301953+08:00", "timestamp": 1750134149.301953}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:17.062714", "seconds": 77.062714}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10090041160583496, "result_length": 29}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:22:29.402811+08:00", "timestamp": 1750134149.402811}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:06.769479", "seconds": 66.769479}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "args": ["test0_g", "test0", "test1"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769131054912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:22:45.664631+08:00", "timestamp": 1750134165.664631}}}
{"text": "用户操作: test0(1) - command_create_chat\n", "record": {"elapsed": {"repr": "0:01:06.771789", "seconds": 66.771789}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_create_chat", "command_args": ["test0_g", "test0", "test1"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_create_chat", "module": "logger", "name": "shared.logger", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769131054912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:22:45.666941+08:00", "timestamp": 1750134165.666941}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:06.872748", "seconds": 66.872748}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "duration": 0.10340762138366699, "result_length": 38}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769131054912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:22:45.767900+08:00", "timestamp": 1750134165.7679}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:12.039432", "seconds": 72.039432}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30779, "name": "MainProcess"}, "thread": {"id": 140135422748480, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:22:54.953936+08:00", "timestamp": 1750134174.953936}}}
{"text": "用户操作: test1(3) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:01:12.039924", "seconds": 72.039924}, "exception": null, "extra": {"user_id": 3, "username": "test1", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(3) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 30779, "name": "MainProcess"}, "thread": {"id": 140135422748480, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:22:54.954428+08:00", "timestamp": 1750134174.954428}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:12.140592", "seconds": 72.140592}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10130524635314941, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30779, "name": "MainProcess"}, "thread": {"id": 140135422748480, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:22:55.055096+08:00", "timestamp": 1750134175.055096}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:52.181564", "seconds": 112.181564}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:23:04.521661+08:00", "timestamp": 1750134184.521661}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:52.282539", "seconds": 112.282539}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.10106801986694336, "result_length": 17}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:23:04.622636+08:00", "timestamp": 1750134184.622636}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:56.130984", "seconds": 116.130984}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-s": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:23:08.471081+08:00", "timestamp": 1750134188.471081}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:56.231499", "seconds": 116.231499}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10055184364318848, "result_length": 67}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:23:08.571596+08:00", "timestamp": 1750134188.571596}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:06.345915", "seconds": 126.345915}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:23:18.686012+08:00", "timestamp": 1750134198.686012}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:02:07.610575", "seconds": 127.610575}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.2647225856781006, "error": "用户 2 不存在"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:23:19.950672+08:00", "timestamp": 1750134199.950672}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:14.196088", "seconds": 134.196088}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:23:26.536185+08:00", "timestamp": 1750134206.536185}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:14.296902", "seconds": 134.296902}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10084795951843262, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:23:26.636999+08:00", "timestamp": 1750134206.636999}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:24.889345", "seconds": 144.889345}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "3"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:23:37.229442+08:00", "timestamp": 1750134217.229442}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:01:55.610897", "seconds": 115.610897}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 test1 (ID: 3) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 30779, "name": "MainProcess"}, "thread": {"id": 140135286945472, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 12:23:38.525401+08:00", "timestamp": 1750134218.525401}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:01:59.630321", "seconds": 119.630321}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 test1 (ID: 3) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769064920768, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 12:23:38.525473+08:00", "timestamp": 1750134218.525473}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:26.272861", "seconds": 146.272861}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.3835711479187012, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:23:38.612958+08:00", "timestamp": 1750134218.612958}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:13.920510", "seconds": 133.92051}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769131054912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:23:52.815662+08:00", "timestamp": 1750134232.815662}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:02:13.923366", "seconds": 133.923366}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769131054912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:23:52.818518+08:00", "timestamp": 1750134232.818518}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:14.027110", "seconds": 134.02711}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10925507545471191, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769131054912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:23:52.922262+08:00", "timestamp": 1750134232.922262}}}
{"text": "收到错误消息\n", "record": {"elapsed": {"repr": "0:02:18.986570", "seconds": 138.98657}, "exception": null, "extra": {"name": "client.core.message", "error_code": 1005, "error_message": "您已被禁言，无法发送消息"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_error_message", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 607, "message": "收到错误消息", "module": "client", "name": "client.core.client", "process": {"id": 30779, "name": "MainProcess"}, "thread": {"id": 140135286945472, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 12:24:01.901074+08:00", "timestamp": 1750134241.901074}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:24.476853", "seconds": 204.476853}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:24:36.816950+08:00", "timestamp": 1750134276.81695}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:24.581680", "seconds": 204.58168}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10718035697937012, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:24:36.921777+08:00", "timestamp": 1750134276.921777}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:29.237016", "seconds": 209.237016}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-g": "3"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:24:41.577113+08:00", "timestamp": 1750134281.577113}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:03:03.839104", "seconds": 183.839104}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 test0_g (ID: 3) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769064920768, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 12:24:42.734256+08:00", "timestamp": 1750134282.734256}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:02:59.819786", "seconds": 179.819786}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 test0_g (ID: 3) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 30779, "name": "MainProcess"}, "thread": {"id": 140135286945472, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 12:24:42.734290+08:00", "timestamp": 1750134282.73429}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:30.480855", "seconds": 210.480855}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.243882656097412, "result_length": 23}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30590, "name": "MainProcess"}, "thread": {"id": 140380881966912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:24:42.820952+08:00", "timestamp": 1750134282.820952}}}
{"text": "收到错误消息\n", "record": {"elapsed": {"repr": "0:03:09.085539", "seconds": 189.085539}, "exception": null, "extra": {"name": "client.core.message", "error_code": 1005, "error_message": "该聊天组已被禁言，无法发送消息"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_error_message", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 607, "message": "收到错误消息", "module": "client", "name": "client.core.client", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769064920768, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 12:24:47.980691+08:00", "timestamp": 1750134287.980691}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:14.836850", "seconds": 194.83685}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769131054912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:24:53.732002+08:00", "timestamp": 1750134293.732002}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:03:14.840129", "seconds": 194.840129}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769131054912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:24:53.735281+08:00", "timestamp": 1750134293.735281}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:14.941442", "seconds": 194.941442}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10471081733703613, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30737, "name": "MainProcess"}, "thread": {"id": 139769131054912, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:24:53.836594+08:00", "timestamp": 1750134293.836594}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.085182", "seconds": 0.085182}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 35183, "name": "MainProcess"}, "thread": {"id": 140347016701760, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:43:01.409401+08:00", "timestamp": 1750135381.409401}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.078585", "seconds": 0.078585}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 35219, "name": "MainProcess"}, "thread": {"id": 140528650516288, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:43:04.946726+08:00", "timestamp": 1750135384.946726}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.092794", "seconds": 0.092794}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 35277, "name": "MainProcess"}, "thread": {"id": 139631580067648, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:43:13.296479+08:00", "timestamp": 1750135393.296479}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:15.365722", "seconds": 75.365722}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "3"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 35277, "name": "MainProcess"}, "thread": {"id": 139631580067648, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:44:28.569407+08:00", "timestamp": 1750135468.569407}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:01:16.563109", "seconds": 76.563109}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.1985888481140137, "error": "用户 test1 已被禁言"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 35277, "name": "MainProcess"}, "thread": {"id": 139631580067648, "name": "MainThread"}, "time": {"repr": "2025-06-17 12:44:29.766794+08:00", "timestamp": 1750135469.766794}}}
{"text": "收到错误消息\n", "record": {"elapsed": {"repr": "0:01:33.669271", "seconds": 93.669271}, "exception": null, "extra": {"name": "client.core.message", "error_code": 1005, "error_message": "您已被禁言，无法发送消息"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_error_message", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 607, "message": "收到错误消息", "module": "client", "name": "client.core.client", "process": {"id": 35183, "name": "MainProcess"}, "thread": {"id": 140346881193664, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 12:44:34.993490+08:00", "timestamp": 1750135474.99349}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.093209", "seconds": 0.093209}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:17:24.001230+08:00", "timestamp": 1750144644.00123}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.083785", "seconds": 0.083785}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:17:28.057415+08:00", "timestamp": 1750144648.057415}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.082735", "seconds": 0.082735}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140654006069056, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:17:31.224834+08:00", "timestamp": 1750144651.224834}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:20.078408", "seconds": 20.078408}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:17:43.986429+08:00", "timestamp": 1750144663.986429}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:20.179336", "seconds": 20.179336}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10100293159484863, "result_length": 47}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:17:44.087357+08:00", "timestamp": 1750144664.087357}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:12.516596", "seconds": 72.516596}, "exception": null, "extra": {"name": "client.commands", "command": "add", "args": ["1234qwer"], "options": {"-u": "test1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:18:36.424617+08:00", "timestamp": 1750144716.424617}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:01:08.461682", "seconds": 68.461682}, "exception": null, "extra": {"name": "client.core.admin", "operation": "add_-u", "message": "用户 test1 (ID: 2) 已创建成功"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140087866156736, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:18:36.435312+08:00", "timestamp": 1750144716.435312}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:12.617899", "seconds": 72.617899}, "exception": null, "extra": {"name": "client.commands", "command": "add", "duration": 0.10143709182739258, "result_length": 22}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:18:36.525920+08:00", "timestamp": 1750144716.52592}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:13.934610", "seconds": 73.93461}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:18:41.908240+08:00", "timestamp": 1750144721.90824}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:01:13.934988", "seconds": 73.934988}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:18:41.908618+08:00", "timestamp": 1750144721.908618}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:14.035673", "seconds": 74.035673}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10114312171936035, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:18:42.009303+08:00", "timestamp": 1750144722.009303}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:40.708748", "seconds": 100.708748}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "args": ["test0_g", "test0", "test1"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:19:08.682378+08:00", "timestamp": 1750144748.682378}}}
{"text": "用户操作: test0(1) - command_create_chat\n", "record": {"elapsed": {"repr": "0:01:40.709389", "seconds": 100.709389}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_create_chat", "command_args": ["test0_g", "test0", "test1"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_create_chat", "module": "logger", "name": "shared.logger", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:19:08.683019+08:00", "timestamp": 1750144748.683019}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:40.810915", "seconds": 100.810915}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "duration": 0.10228252410888672, "result_length": 38}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:19:08.784545+08:00", "timestamp": 1750144748.784545}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:47.969625", "seconds": 107.969625}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:19:15.943255+08:00", "timestamp": 1750144755.943255}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:01:47.970065", "seconds": 107.970065}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:19:15.943695+08:00", "timestamp": 1750144755.943695}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:48.073463", "seconds": 108.073463}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10390567779541016, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:19:16.047093+08:00", "timestamp": 1750144756.047093}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:56.460561", "seconds": 116.460561}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140654006069056, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:19:27.602660+08:00", "timestamp": 1750144767.60266}}}
{"text": "用户操作: test1(2) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:01:56.470795", "seconds": 116.470795}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140654006069056, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:19:27.612894+08:00", "timestamp": 1750144767.612894}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:02:06.494200", "seconds": 126.4942}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 10.03827714920044, "error": "服务器无响应"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140654006069056, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:19:37.636299+08:00", "timestamp": 1750144777.636299}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:14.404091", "seconds": 134.404091}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140654006069056, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:19:45.546190+08:00", "timestamp": 1750144785.54619}}}
{"text": "用户操作: test1(2) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:02:14.404834", "seconds": 134.404834}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140654006069056, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:19:45.546933+08:00", "timestamp": 1750144785.546933}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:14.505258", "seconds": 134.505258}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10122323036193848, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140654006069056, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:19:45.647357+08:00", "timestamp": 1750144785.647357}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:36.728150", "seconds": 156.72815}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:20:00.636171+08:00", "timestamp": 1750144800.636171}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:02:33.883832", "seconds": 153.883832}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 test1 (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140087866156736, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:20:01.857462+08:00", "timestamp": 1750144801.857462}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:02:30.715343", "seconds": 150.715343}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 test1 (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140653602272960, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:20:01.857442+08:00", "timestamp": 1750144801.857442}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:38.034580", "seconds": 158.03458}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.3065681457519531, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:20:01.942601+08:00", "timestamp": 1750144801.942601}}}
{"text": "收到错误消息\n", "record": {"elapsed": {"repr": "0:02:34.545832", "seconds": 154.545832}, "exception": null, "extra": {"name": "client.core.message", "error_code": 1005, "error_message": "您已被禁言，无法发送消息"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_error_message", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 607, "message": "收到错误消息", "module": "client", "name": "client.core.client", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140653602272960, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:20:05.687931+08:00", "timestamp": 1750144805.687931}}}
{"text": "收到错误消息\n", "record": {"elapsed": {"repr": "0:02:49.533879", "seconds": 169.533879}, "exception": null, "extra": {"name": "client.core.message", "error_code": 1005, "error_message": "您已被禁言，无法发送消息"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_error_message", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 607, "message": "收到错误消息", "module": "client", "name": "client.core.client", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140653602272960, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:20:20.675978+08:00", "timestamp": 1750144820.675978}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:13.477995", "seconds": 193.477995}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:20:37.386016+08:00", "timestamp": 1750144837.386016}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:03:13.583433", "seconds": 193.583433}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10463714599609375, "error": "您不是聊天组 'test0_g' 的成员"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:20:37.491454+08:00", "timestamp": 1750144837.491454}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:21.011194", "seconds": 201.011194}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:20:44.919215+08:00", "timestamp": 1750144844.919215}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:21.115611", "seconds": 201.115611}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.10445713996887207, "result_length": 17}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:20:45.023632+08:00", "timestamp": 1750144845.023632}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:27.700368", "seconds": 207.700368}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:20:51.608389+08:00", "timestamp": 1750144851.608389}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:27.804151", "seconds": 207.804151}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10392189025878906, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:20:51.712172+08:00", "timestamp": 1750144851.712172}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:53.735257", "seconds": 233.735257}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:21:17.643278+08:00", "timestamp": 1750144877.643278}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:53.842783", "seconds": 233.842783}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10760927200317383, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:21:17.750804+08:00", "timestamp": 1750144877.750804}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:02.912587", "seconds": 242.912587}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:21:26.820608+08:00", "timestamp": 1750144886.820608}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:03:56.812864", "seconds": 236.812864}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 test0_g (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140653602272960, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:21:27.954963+08:00", "timestamp": 1750144887.954963}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:03:59.982873", "seconds": 239.982873}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 test0_g (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140087866156736, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:21:27.956503+08:00", "timestamp": 1750144887.956503}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:04.108018", "seconds": 244.108018}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.1955862045288086, "result_length": 23}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:21:28.016039+08:00", "timestamp": 1750144888.016039}}}
{"text": "收到错误消息\n", "record": {"elapsed": {"repr": "0:04:05.045051", "seconds": 245.045051}, "exception": null, "extra": {"name": "client.core.message", "error_code": 1005, "error_message": "该聊天组已被禁言，无法发送消息"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_error_message", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 607, "message": "收到错误消息", "module": "client", "name": "client.core.client", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140087866156736, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:21:33.018681+08:00", "timestamp": 1750144893.018681}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:30.118966", "seconds": 270.118966}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:21:54.026987+08:00", "timestamp": 1750144914.026987}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:26.069552", "seconds": 266.069552}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 test0_g (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140087866156736, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:21:54.043182+08:00", "timestamp": 1750144914.043182}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:22.901143", "seconds": 262.901143}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 test0_g (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140653602272960, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:21:54.043242+08:00", "timestamp": 1750144914.043242}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:30.223068", "seconds": 270.223068}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.1071319580078125, "result_length": 24}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:21:54.131089+08:00", "timestamp": 1750144914.131089}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:05:07.232234", "seconds": 307.232234}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:22:31.140255+08:00", "timestamp": 1750144951.140255}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:05:00.013333", "seconds": 300.013333}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 test1 (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140653602272960, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:22:31.155432+08:00", "timestamp": 1750144951.155432}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:05:03.181736", "seconds": 303.181736}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 test1 (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140087866156736, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:22:31.155366+08:00", "timestamp": 1750144951.155366}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:05:07.337187", "seconds": 307.337187}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10502338409423828, "result_length": 22}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:22:31.245208+08:00", "timestamp": 1750144951.245208}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:05:48.544650", "seconds": 348.54465}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:23:16.518280+08:00", "timestamp": 1750144996.51828}}}
{"text": "用户操作: test0(1) - command_recv_files\n", "record": {"elapsed": {"repr": "0:05:48.560801", "seconds": 348.560801}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_recv_files", "command_args": [], "command_options": {"-l": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:23:16.534431+08:00", "timestamp": 1750144996.534431}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:05:48.673280", "seconds": 348.67328}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.13723969459533691, "result_length": 9}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:23:16.646910+08:00", "timestamp": 1750144996.64691}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:06:07.611643", "seconds": 367.611643}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "args": ["/home/student/Code/CN/Chat-Room/README.md"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:23:35.585273+08:00", "timestamp": 1750145015.585273}}}
{"text": "用户操作: test0(1) - command_send_files\n", "record": {"elapsed": {"repr": "0:06:07.612327", "seconds": 367.612327}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_send_files", "command_args": ["/home/student/Code/CN/Chat-Room/README.md"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_send_files", "module": "logger", "name": "shared.logger", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:23:35.585957+08:00", "timestamp": 1750145015.585957}}}
{"text": "收到错误消息\n", "record": {"elapsed": {"repr": "0:06:11.811325", "seconds": 371.811325}, "exception": null, "extra": {"name": "client.core.message", "error_code": 1008, "error_message": "消息解析失败: BaseMessage.__init__() got an unexpected keyword argument 'sender_id'"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_error_message", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 607, "message": "收到错误消息", "module": "client", "name": "client.core.client", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604335974080, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:23:35.719346+08:00", "timestamp": 1750145015.719346}}}
{"text": "收到错误消息\n", "record": {"elapsed": {"repr": "0:06:04.577301", "seconds": 364.577301}, "exception": null, "extra": {"name": "client.core.message", "error_code": 1008, "error_message": "消息解析失败: BaseMessage.__init__() got an unexpected keyword argument 'sender_id'"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_error_message", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 607, "message": "收到错误消息", "module": "client", "name": "client.core.client", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140653602272960, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:23:35.719400+08:00", "timestamp": 1750145015.7194}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:06:07.823319", "seconds": 367.823319}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "duration": 0.2138664722442627, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140088139503424, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:23:35.796949+08:00", "timestamp": 1750145015.796949}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:06:12.197157", "seconds": 372.197157}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140654006069056, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:23:43.339256+08:00", "timestamp": 1750145023.339256}}}
{"text": "用户操作: test1(2) - command_recv_files\n", "record": {"elapsed": {"repr": "0:06:12.201907", "seconds": 372.201907}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_recv_files", "command_args": [], "command_options": {"-l": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140654006069056, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:23:43.344006+08:00", "timestamp": 1750145023.344006}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:06:12.310263", "seconds": 372.310263}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.11763191223144531, "result_length": 78}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140654006069056, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:23:43.452362+08:00", "timestamp": 1750145023.452362}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:06:19.769534", "seconds": 379.769534}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-n": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140654006069056, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:23:50.911633+08:00", "timestamp": 1750145030.911633}}}
{"text": "用户操作: test1(2) - command_recv_files\n", "record": {"elapsed": {"repr": "0:06:19.769990", "seconds": 379.76999}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_recv_files", "command_args": [], "command_options": {"-n": "1"}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140654006069056, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:23:50.912089+08:00", "timestamp": 1750145030.912089}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:06:21.892460", "seconds": 381.89246}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 2.125495433807373, "result_length": 40}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140654006069056, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:23:53.034559+08:00", "timestamp": 1750145033.034559}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:07:40.478666", "seconds": 460.478666}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:25:04.386687+08:00", "timestamp": 1750145104.386687}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:07:34.387508", "seconds": 454.387508}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 test1 (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140653602272960, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:25:05.529607+08:00", "timestamp": 1750145105.529607}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:07:37.555890", "seconds": 457.55589}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 test1 (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140087866156736, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:25:05.529520+08:00", "timestamp": 1750145105.52952}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:07:41.710576", "seconds": 461.710576}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.2320678234100342, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:25:05.618597+08:00", "timestamp": 1750145105.618597}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:07:46.050165", "seconds": 466.050165}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:25:09.958186+08:00", "timestamp": 1750145109.958186}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:07:46.150942", "seconds": 466.150942}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10075712203979492, "result_length": 35}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:25:10.058963+08:00", "timestamp": 1750145110.058963}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:07:51.810873", "seconds": 471.810873}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:25:15.718894+08:00", "timestamp": 1750145115.718894}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:07:49.112013", "seconds": 469.112013}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 test0_g (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140087866156736, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:25:17.085643+08:00", "timestamp": 1750145117.085643}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:07:45.943759", "seconds": 465.943759}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 test0_g (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140653602272960, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:25:17.085858+08:00", "timestamp": 1750145117.085858}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:07:53.260748", "seconds": 473.260748}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.4505643844604492, "result_length": 23}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:25:17.168769+08:00", "timestamp": 1750145117.168769}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:07:57.437802", "seconds": 477.437802}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:25:21.345823+08:00", "timestamp": 1750145121.345823}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:07:57.540061", "seconds": 477.540061}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10231876373291016, "result_length": 54}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:25:21.448082+08:00", "timestamp": 1750145121.448082}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:08:07.231242", "seconds": 487.231242}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:25:31.139263+08:00", "timestamp": 1750145131.139263}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:08:03.176776", "seconds": 483.176776}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 test1 (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140087866156736, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:25:31.150406+08:00", "timestamp": 1750145131.150406}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:08:00.008410", "seconds": 480.00841}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 test1 (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140653602272960, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:25:31.150509+08:00", "timestamp": 1750145131.150509}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:08:07.331974", "seconds": 487.331974}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10078215599060059, "result_length": 22}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:25:31.239995+08:00", "timestamp": 1750145131.239995}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:08:10.882937", "seconds": 490.882937}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:25:34.790958+08:00", "timestamp": 1750145134.790958}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:08:03.658022", "seconds": 483.658022}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 test0_g (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63358, "name": "MainProcess"}, "thread": {"id": 140653602272960, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:25:34.800121+08:00", "timestamp": 1750145134.800121}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:08:06.826490", "seconds": 486.82649}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 test0_g (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 63316, "name": "MainProcess"}, "thread": {"id": 140087866156736, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:25:34.800120+08:00", "timestamp": 1750145134.80012}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:08:10.984483", "seconds": 490.984483}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10159873962402344, "result_length": 24}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 63274, "name": "MainProcess"}, "thread": {"id": 140604607563584, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:25:34.892504+08:00", "timestamp": 1750145134.892504}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.116256", "seconds": 0.116256}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 69411, "name": "MainProcess"}, "thread": {"id": 140516880758592, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:44:48.899052+08:00", "timestamp": 1750146288.899052}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.113621", "seconds": 0.113621}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:48:58.241490+08:00", "timestamp": 1750146538.24149}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.106595", "seconds": 0.106595}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 70439, "name": "MainProcess"}, "thread": {"id": 140144099067712, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:49:14.984352+08:00", "timestamp": 1750146554.984352}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:34.906543", "seconds": 34.906543}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:49:33.034412+08:00", "timestamp": 1750146573.034412}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:35.008885", "seconds": 35.008885}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.1029510498046875, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:49:33.136754+08:00", "timestamp": 1750146573.136754}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:44.151995", "seconds": 44.151995}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:49:42.279864+08:00", "timestamp": 1750146582.279864}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:00:28.584493", "seconds": 28.584493}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 test0 (ID: 1) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 70439, "name": "MainProcess"}, "thread": {"id": 140143826556608, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:49:43.462250+08:00", "timestamp": 1750146583.46225}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:45.415097", "seconds": 45.415097}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.2631628513336182, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:49:43.542966+08:00", "timestamp": 1750146583.542966}}}
{"text": "收到错误消息\n", "record": {"elapsed": {"repr": "0:00:33.313160", "seconds": 33.31316}, "exception": null, "extra": {"name": "client.core.message", "error_code": 1005, "error_message": "您已被禁言，无法发送消息"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_error_message", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 607, "message": "收到错误消息", "module": "client", "name": "client.core.client", "process": {"id": 70439, "name": "MainProcess"}, "thread": {"id": 140143826556608, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:49:48.190917+08:00", "timestamp": 1750146588.190917}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.121475", "seconds": 0.121475}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 70692, "name": "MainProcess"}, "thread": {"id": 139771608033088, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:50:02.805282+08:00", "timestamp": 1750146602.805282}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.103786", "seconds": 0.103786}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662691551040, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:50:37.429303+08:00", "timestamp": 1750146637.429303}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:00:10.224425", "seconds": 10.224425}, "exception": null, "extra": {"name": "client.commands", "command": "lgoin", "input": "/lgoin"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 394, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662691551040, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:50:47.549942+08:00", "timestamp": 1750146647.549942}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:11.348648", "seconds": 191.348648}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "args": [], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:52:09.476517+08:00", "timestamp": 1750146729.476517}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:03:11.394436", "seconds": 191.394436}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "duration": 0.06586766242980957, "error": "用法: /modify -u <用户ID> <字段> <新值>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:52:09.522305+08:00", "timestamp": 1750146729.522305}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:24.166314", "seconds": 204.166314}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "args": ["username", "test1"], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:52:22.294183+08:00", "timestamp": 1750146742.294183}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:02:19.692888", "seconds": 139.692888}, "exception": null, "extra": {"name": "client.core.admin", "operation": "modify_-u", "message": "用户 test1 的用户名已修改为 test1"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 70692, "name": "MainProcess"}, "thread": {"id": 139771179427520, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:52:22.376695+08:00", "timestamp": 1750146742.376695}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:24.276661", "seconds": 204.276661}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "duration": 0.11153340339660645, "result_length": 23}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:52:22.404530+08:00", "timestamp": 1750146742.40453}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:36.540597", "seconds": 216.540597}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "args": ["password", "1234qwer"], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:52:34.668466+08:00", "timestamp": 1750146754.668466}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:02:31.994813", "seconds": 151.994813}, "exception": null, "extra": {"name": "client.core.admin", "operation": "modify_-u", "message": "用户 test1 的密码已重置"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 70692, "name": "MainProcess"}, "thread": {"id": 139771179427520, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:52:34.678620+08:00", "timestamp": 1750146754.67862}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:36.642830", "seconds": 216.64283}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "duration": 0.10230851173400879, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:52:34.770699+08:00", "timestamp": 1750146754.770699}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:17.368875", "seconds": 137.368875}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662691551040, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:52:54.694392+08:00", "timestamp": 1750146774.694392}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:02:17.387830", "seconds": 137.38783}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-g": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662691551040, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:52:54.713347+08:00", "timestamp": 1750146774.713347}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:17.496489", "seconds": 137.496489}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.13538432121276855, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662691551040, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:52:54.822006+08:00", "timestamp": 1750146774.822006}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:24.992167", "seconds": 144.992167}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662691551040, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:53:02.317684+08:00", "timestamp": 1750146782.317684}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:02:24.992518", "seconds": 144.992518}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662691551040, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:53:02.318035+08:00", "timestamp": 1750146782.318035}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:25.096470", "seconds": 145.09647}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10432982444763184, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662691551040, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:53:02.421987+08:00", "timestamp": 1750146782.421987}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:24.248837", "seconds": 264.248837}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:53:22.376706+08:00", "timestamp": 1750146802.376706}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:02:45.860702", "seconds": 165.860702}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 test0_g (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662261741248, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:53:23.186219+08:00", "timestamp": 1750146803.186219}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:03:20.502603", "seconds": 200.502603}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 test0_g (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 70692, "name": "MainProcess"}, "thread": {"id": 139771179427520, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:53:23.186410+08:00", "timestamp": 1750146803.18641}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:25.143206", "seconds": 265.143206}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 0.899956464767456, "result_length": 23}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:53:23.271075+08:00", "timestamp": 1750146803.271075}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:55.727403", "seconds": 175.727403}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662691551040, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:53:33.052920+08:00", "timestamp": 1750146813.05292}}}
{"text": "用户操作: test1(2) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:02:55.728148", "seconds": 175.728148}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662691551040, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:53:33.053665+08:00", "timestamp": 1750146813.053665}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:55.829425", "seconds": 175.829425}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10351967811584473, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662691551040, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:53:33.154942+08:00", "timestamp": 1750146813.154942}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:56.878010", "seconds": 296.87801}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:53:55.005879+08:00", "timestamp": 1750146835.005879}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:56.979431", "seconds": 296.979431}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10336828231811523, "result_length": 68}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:53:55.107300+08:00", "timestamp": 1750146835.1073}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:05:03.695438", "seconds": 303.695438}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:54:01.823307+08:00", "timestamp": 1750146841.823307}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:03:24.510272", "seconds": 204.510272}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 test1 (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662261741248, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:54:01.835789+08:00", "timestamp": 1750146841.835789}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:03:59.152031", "seconds": 239.152031}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 test1 (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 70692, "name": "MainProcess"}, "thread": {"id": 139771179427520, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:54:01.835838+08:00", "timestamp": 1750146841.835838}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:05:03.799121", "seconds": 303.799121}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10373258590698242, "result_length": 22}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:54:01.926990+08:00", "timestamp": 1750146841.92699}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:05:21.283781", "seconds": 321.283781}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-u": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:54:19.411650+08:00", "timestamp": 1750146859.41165}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:16.741043", "seconds": 256.741043}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 test0 (ID: 1) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 70692, "name": "MainProcess"}, "thread": {"id": 139771179427520, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:54:19.424850+08:00", "timestamp": 1750146859.42485}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:03:42.099346", "seconds": 222.099346}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 test0 (ID: 1) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662261741248, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:54:19.424863+08:00", "timestamp": 1750146859.424863}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:05:21.388267", "seconds": 321.388267}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10460615158081055, "result_length": 22}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:54:19.516136+08:00", "timestamp": 1750146859.516136}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:05:25.732603", "seconds": 325.732603}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:54:23.860472+08:00", "timestamp": 1750146863.860472}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:03:46.547351", "seconds": 226.547351}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 test0_g (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 70886, "name": "MainProcess"}, "thread": {"id": 139662261741248, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:54:23.872868+08:00", "timestamp": 1750146863.872868}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:21.189039", "seconds": 261.189039}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 test0_g (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 70692, "name": "MainProcess"}, "thread": {"id": 139771179427520, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 15:54:23.872846+08:00", "timestamp": 1750146863.872846}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:05:25.837474", "seconds": 325.837474}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10490226745605469, "result_length": 24}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 70289, "name": "MainProcess"}, "thread": {"id": 140178267854656, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:54:23.965343+08:00", "timestamp": 1750146863.965343}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:35.535687", "seconds": 275.535687}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 70692, "name": "MainProcess"}, "thread": {"id": 139771608033088, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:54:38.219494+08:00", "timestamp": 1750146878.219494}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:04:35.539093", "seconds": 275.539093}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 70692, "name": "MainProcess"}, "thread": {"id": 139771608033088, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:54:38.222900+08:00", "timestamp": 1750146878.2229}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:35.642191", "seconds": 275.642191}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.1116642951965332, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 70692, "name": "MainProcess"}, "thread": {"id": 139771608033088, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:54:38.325998+08:00", "timestamp": 1750146878.325998}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.112786", "seconds": 0.112786}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 72908, "name": "MainProcess"}, "thread": {"id": 140518534428480, "name": "MainThread"}, "time": {"repr": "2025-06-17 15:59:15.437501+08:00", "timestamp": 1750147155.437501}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.104011", "seconds": 0.104011}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 74404, "name": "MainProcess"}, "thread": {"id": 140648983467840, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:04:52.490076+08:00", "timestamp": 1750147492.490076}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.094509", "seconds": 0.094509}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:10:09.261217+08:00", "timestamp": 1750147809.261217}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.080047", "seconds": 0.080047}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 75967, "name": "MainProcess"}, "thread": {"id": 140113803732800, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:10:15.055333+08:00", "timestamp": 1750147815.055333}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.079852", "seconds": 0.079852}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:10:18.054252+08:00", "timestamp": 1750147818.054252}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:53.937107", "seconds": 53.937107}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "args": ["password", "1234qwer"], "options": {"-u": "test1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:03.103815+08:00", "timestamp": 1750147863.103815}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:00:53.937655", "seconds": 53.937655}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "duration": 0.0007169246673583984, "error": "用户ID必须是数字"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:03.104363+08:00", "timestamp": 1750147863.104363}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:02.191828", "seconds": 62.191828}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:11.358536+08:00", "timestamp": 1750147871.358536}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:02.292796", "seconds": 62.292796}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10105395317077637, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:11.459504+08:00", "timestamp": 1750147871.459504}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:14.418751", "seconds": 74.418751}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "args": ["password", "1234qwer"], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:23.585459+08:00", "timestamp": 1750147883.585459}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:01:08.623186", "seconds": 68.623186}, "exception": null, "extra": {"name": "client.core.admin", "operation": "modify_-u", "message": "用户 test1 的密码已重置"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 75967, "name": "MainProcess"}, "thread": {"id": 140113241700032, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 16:11:23.598472+08:00", "timestamp": 1750147883.598472}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:14.519522", "seconds": 74.519522}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "duration": 0.10082221031188965, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:23.686230+08:00", "timestamp": 1750147883.68623}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:18.665759", "seconds": 78.665759}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:36.640159+08:00", "timestamp": 1750147896.640159}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:01:18.668523", "seconds": 78.668523}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-g": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:36.642923+08:00", "timestamp": 1750147896.642923}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:18.769180", "seconds": 78.76918}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10349917411804199, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:36.743580+08:00", "timestamp": 1750147896.74358}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:25.718079", "seconds": 85.718079}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:43.692479+08:00", "timestamp": 1750147903.692479}}}
{"text": "用户操作: test1(2) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:01:25.718413", "seconds": 85.718413}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:43.692813+08:00", "timestamp": 1750147903.692813}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:25.819242", "seconds": 85.819242}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10120153427124023, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:43.793642+08:00", "timestamp": 1750147903.793642}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:28.896178", "seconds": 88.896178}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-f": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:46.870578+08:00", "timestamp": 1750147906.870578}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:01:28.896501", "seconds": 88.896501}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-f": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:46.870901+08:00", "timestamp": 1750147906.870901}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:28.997332", "seconds": 88.997332}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10117387771606445, "result_length": 53}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:11:46.971732+08:00", "timestamp": 1750147906.971732}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:01.558607", "seconds": 121.558607}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:12:10.725315+08:00", "timestamp": 1750147930.725315}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:01.660693", "seconds": 121.660693}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10217642784118652, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:12:10.827401+08:00", "timestamp": 1750147930.827401}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:17.381536", "seconds": 137.381536}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:12:26.548244+08:00", "timestamp": 1750147946.548244}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:17.483118", "seconds": 137.483118}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.10162568092346191, "result_length": 78}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:12:26.649826+08:00", "timestamp": 1750147946.649826}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:22.865118", "seconds": 142.865118}, "exception": null, "extra": {"name": "client.commands", "command": "del", "args": [], "options": {"-f": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:12:32.031826+08:00", "timestamp": 1750147952.031826}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:02:18.092388", "seconds": 138.092388}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-f", "message": "文件 README.md (ID: 1) 已被删除\n上传者: test0\n所属群组: test0_g"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 75967, "name": "MainProcess"}, "thread": {"id": 140113241700032, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 16:12:33.067674+08:00", "timestamp": 1750147953.067674}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:02:15.093747", "seconds": 135.093747}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-f", "message": "文件 README.md (ID: 1) 已被删除\n上传者: test0\n所属群组: test0_g"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140658836764352, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 16:12:33.068147+08:00", "timestamp": 1750147953.068147}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:23.984011", "seconds": 143.984011}, "exception": null, "extra": {"name": "client.commands", "command": "del", "duration": 1.1189334392547607, "result_length": 50}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:12:33.150719+08:00", "timestamp": 1750147953.150719}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:29.293067", "seconds": 149.293067}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-f": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:12:38.459775+08:00", "timestamp": 1750147958.459775}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:29.393928", "seconds": 149.393928}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10092377662658691, "result_length": 9}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:12:38.560636+08:00", "timestamp": 1750147958.560636}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:38.776412", "seconds": 158.776412}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75967, "name": "MainProcess"}, "thread": {"id": 140113803732800, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:12:53.751698+08:00", "timestamp": 1750147973.751698}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:02:38.777733", "seconds": 158.777733}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 75967, "name": "MainProcess"}, "thread": {"id": 140113803732800, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:12:53.753019+08:00", "timestamp": 1750147973.753019}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:38.881007", "seconds": 158.881007}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10813593864440918, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75967, "name": "MainProcess"}, "thread": {"id": 140113803732800, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:12:53.856293+08:00", "timestamp": 1750147973.856293}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:13.373140", "seconds": 193.37314}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "args": ["/home/student/Code/CN/Chat-Room/README.md"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75967, "name": "MainProcess"}, "thread": {"id": 140113803732800, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:13:28.348426+08:00", "timestamp": 1750148008.348426}}}
{"text": "用户操作: test0(1) - command_send_files\n", "record": {"elapsed": {"repr": "0:03:13.374584", "seconds": 193.374584}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_send_files", "command_args": ["/home/student/Code/CN/Chat-Room/README.md"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_send_files", "module": "logger", "name": "shared.logger", "process": {"id": 75967, "name": "MainProcess"}, "thread": {"id": 140113803732800, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:13:28.349870+08:00", "timestamp": 1750148008.34987}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:13.580168", "seconds": 193.580168}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "duration": 0.2095649242401123, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75967, "name": "MainProcess"}, "thread": {"id": 140113803732800, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:13:28.555454+08:00", "timestamp": 1750148008.555454}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:22.187628", "seconds": 202.187628}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:13:40.162028+08:00", "timestamp": 1750148020.162028}}}
{"text": "用户操作: test1(2) - command_recv_files\n", "record": {"elapsed": {"repr": "0:03:22.192576", "seconds": 202.192576}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_recv_files", "command_args": [], "command_options": {"-l": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:13:40.166976+08:00", "timestamp": 1750148020.166976}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:22.295019", "seconds": 202.295019}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.10981130599975586, "result_length": 78}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:13:40.269419+08:00", "timestamp": 1750148020.269419}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:32.892263", "seconds": 212.892263}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-n": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:13:50.866663+08:00", "timestamp": 1750148030.866663}}}
{"text": "用户操作: test1(2) - command_recv_files\n", "record": {"elapsed": {"repr": "0:03:32.892583", "seconds": 212.892583}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_recv_files", "command_args": [], "command_options": {"-n": "2"}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:13:50.866983+08:00", "timestamp": 1750148030.866983}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:35.033150", "seconds": 215.03315}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 2.1409125328063965, "result_length": 40}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140659404896064, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:13:53.007550+08:00", "timestamp": 1750148033.00755}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:17.819801", "seconds": 257.819801}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:14:26.986509+08:00", "timestamp": 1750148066.986509}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:17.953041", "seconds": 257.953041}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.14205431938171387, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:14:27.119749+08:00", "timestamp": 1750148067.119749}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:22.768560", "seconds": 262.76856}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:14:31.935268+08:00", "timestamp": 1750148071.935268}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:15.139875", "seconds": 255.139875}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 test1 (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140658836764352, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 16:14:33.114275+08:00", "timestamp": 1750148073.114275}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:18.141439", "seconds": 258.141439}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 test1 (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 75967, "name": "MainProcess"}, "thread": {"id": 140113241700032, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 16:14:33.116725+08:00", "timestamp": 1750148073.116725}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:24.020384", "seconds": 264.020384}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.2538011074066162, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:14:33.187092+08:00", "timestamp": 1750148073.187092}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:39.541368", "seconds": 279.541368}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:14:48.708076+08:00", "timestamp": 1750148088.708076}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:31.672313", "seconds": 271.672313}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 test0_g (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140658836764352, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 16:14:49.646713+08:00", "timestamp": 1750148089.646713}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:40.573850", "seconds": 280.57385}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.0325136184692383, "result_length": 23}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:14:49.740558+08:00", "timestamp": 1750148089.740558}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:34.862125", "seconds": 274.862125}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 test0_g (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 75967, "name": "MainProcess"}, "thread": {"id": 140113241700032, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 16:14:49.837411+08:00", "timestamp": 1750148089.837411}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:52.389082", "seconds": 292.389082}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:15:01.555790+08:00", "timestamp": 1750148101.55579}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:52.490275", "seconds": 292.490275}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10326790809631348, "result_length": 54}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:15:01.656983+08:00", "timestamp": 1750148101.656983}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:57.332285", "seconds": 297.332285}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:15:06.498993+08:00", "timestamp": 1750148106.498993}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:51.535144", "seconds": 291.535144}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 test1 (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 75967, "name": "MainProcess"}, "thread": {"id": 140113241700032, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 16:15:06.510430+08:00", "timestamp": 1750148106.51043}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:48.536123", "seconds": 288.536123}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 test1 (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140658836764352, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 16:15:06.510523+08:00", "timestamp": 1750148106.510523}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:57.432969", "seconds": 297.432969}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10074162483215332, "result_length": 22}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:15:06.599677+08:00", "timestamp": 1750148106.599677}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:05:03.247456", "seconds": 303.247456}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:15:12.414164+08:00", "timestamp": 1750148112.414164}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:57.452340", "seconds": 297.45234}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 test0_g (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 75967, "name": "MainProcess"}, "thread": {"id": 140113241700032, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 16:15:12.427626+08:00", "timestamp": 1750148112.427626}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:54.453543", "seconds": 294.453543}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 test0_g (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 76013, "name": "MainProcess"}, "thread": {"id": 140658836764352, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-17 16:15:12.427943+08:00", "timestamp": 1750148112.427943}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:05:03.350595", "seconds": 303.350595}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10321950912475586, "result_length": 24}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 75923, "name": "MainProcess"}, "thread": {"id": 140652693116736, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:15:12.517303+08:00", "timestamp": 1750148112.517303}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.083128", "seconds": 0.083128}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 80815, "name": "MainProcess"}, "thread": {"id": 140556847556416, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:31:18.995249+08:00", "timestamp": 1750149078.995249}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:16.763121", "seconds": 16.763121}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 80815, "name": "MainProcess"}, "thread": {"id": 140556847556416, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:31:35.675242+08:00", "timestamp": 1750149095.675242}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:00:16.763470", "seconds": 16.76347}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 80815, "name": "MainProcess"}, "thread": {"id": 140556847556416, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:31:35.675591+08:00", "timestamp": 1750149095.675591}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:16.864103", "seconds": 16.864103}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10107207298278809, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 80815, "name": "MainProcess"}, "thread": {"id": 140556847556416, "name": "MainThread"}, "time": {"repr": "2025-06-17 16:31:35.776224+08:00", "timestamp": 1750149095.776224}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.120824", "seconds": 0.120824}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 2504, "name": "MainProcess"}, "thread": {"id": 140227084351296, "name": "MainThread"}, "time": {"repr": "2025-06-18 15:14:44.630532+08:00", "timestamp": 1750230884.630532}}}
{"text": "连接服务器失败\n", "record": {"elapsed": {"repr": "0:00:00.121844", "seconds": 0.121844}, "exception": null, "extra": {"name": "client.core.network", "host": "localhost", "port": 8888, "error": "[Errno 111] Connection refused"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "connect", "level": {"icon": "❌", "name": "ERROR", "no": 40}, "line": 57, "message": "连接服务器失败", "module": "client", "name": "client.core.client", "process": {"id": 2504, "name": "MainProcess"}, "thread": {"id": 140227084351296, "name": "MainThread"}, "time": {"repr": "2025-06-18 15:14:44.631552+08:00", "timestamp": 1750230884.631552}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.075203", "seconds": 0.075203}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 2842, "name": "MainProcess"}, "thread": {"id": 140228245276480, "name": "MainThread"}, "time": {"repr": "2025-06-18 15:15:11.670365+08:00", "timestamp": 1750230911.670365}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.120933", "seconds": 0.120933}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 8916, "name": "MainProcess"}, "thread": {"id": 140342419765056, "name": "MainThread"}, "time": {"repr": "2025-06-18 15:48:45.594800+08:00", "timestamp": 1750232925.5948}}}
{"text": "连接服务器失败\n", "record": {"elapsed": {"repr": "0:00:00.122907", "seconds": 0.122907}, "exception": null, "extra": {"name": "client.core.network", "host": "localhost", "port": 8888, "error": "[Errno 111] Connection refused"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "connect", "level": {"icon": "❌", "name": "ERROR", "no": 40}, "line": 57, "message": "连接服务器失败", "module": "client", "name": "client.core.client", "process": {"id": 8916, "name": "MainProcess"}, "thread": {"id": 140342419765056, "name": "MainThread"}, "time": {"repr": "2025-06-18 15:48:45.596774+08:00", "timestamp": 1750232925.596774}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.094528", "seconds": 0.094528}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 12000, "name": "MainProcess"}, "thread": {"id": 140496493053760, "name": "MainThread"}, "time": {"repr": "2025-06-18 15:59:45.144376+08:00", "timestamp": 1750233585.144376}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.147566", "seconds": 0.147566}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 14201, "name": "MainProcess"}, "thread": {"id": 140413321389888, "name": "MainThread"}, "time": {"repr": "2025-06-18 16:10:11.673469+08:00", "timestamp": 1750234211.673469}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.093202", "seconds": 0.093202}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 15574, "name": "MainProcess"}, "thread": {"id": 139850622650176, "name": "MainThread"}, "time": {"repr": "2025-06-18 16:16:14.689585+08:00", "timestamp": 1750234574.689585}}}
{"text": "连接服务器失败\n", "record": {"elapsed": {"repr": "0:00:00.128043", "seconds": 0.128043}, "exception": null, "extra": {"name": "client.core.network", "host": "47.116.210.212", "port": 8888, "error": "[Errno 111] Connection refused"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "connect", "level": {"icon": "❌", "name": "ERROR", "no": 40}, "line": 57, "message": "连接服务器失败", "module": "client", "name": "client.core.client", "process": {"id": 15574, "name": "MainProcess"}, "thread": {"id": 139850622650176, "name": "MainThread"}, "time": {"repr": "2025-06-18 16:16:14.724426+08:00", "timestamp": 1750234574.724426}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.081162", "seconds": 0.081162}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 15714, "name": "MainProcess"}, "thread": {"id": 139777942918976, "name": "MainThread"}, "time": {"repr": "2025-06-18 16:16:42.780604+08:00", "timestamp": 1750234602.780604}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.064625", "seconds": 0.064625}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 16220, "name": "MainProcess"}, "thread": {"id": 140570409318208, "name": "MainThread"}, "time": {"repr": "2025-06-18 16:19:11.431569+08:00", "timestamp": 1750234751.431569}}}
{"text": "连接服务器失败\n", "record": {"elapsed": {"repr": "0:00:00.089869", "seconds": 0.089869}, "exception": null, "extra": {"name": "client.core.network", "host": "47.116.210.212", "port": 8888, "error": "[Errno 111] Connection refused"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "connect", "level": {"icon": "❌", "name": "ERROR", "no": 40}, "line": 57, "message": "连接服务器失败", "module": "client", "name": "client.core.client", "process": {"id": 16220, "name": "MainProcess"}, "thread": {"id": 140570409318208, "name": "MainThread"}, "time": {"repr": "2025-06-18 16:19:11.456813+08:00", "timestamp": 1750234751.456813}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.073736", "seconds": 0.073736}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 16913, "name": "MainProcess"}, "thread": {"id": 140081242941248, "name": "MainThread"}, "time": {"repr": "2025-06-18 16:22:19.281319+08:00", "timestamp": 1750234939.281319}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.107797", "seconds": 0.107797}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 17053, "name": "MainProcess"}, "thread": {"id": 140087351580480, "name": "MainThread"}, "time": {"repr": "2025-06-18 16:23:03.373202+08:00", "timestamp": 1750234983.373202}}}
{"text": "连接服务器失败\n", "record": {"elapsed": {"repr": "0:00:00.138999", "seconds": 0.138999}, "exception": null, "extra": {"name": "client.core.network", "host": "47.116.210.212", "port": 8888, "error": "[Errno 111] Connection refused"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "connect", "level": {"icon": "❌", "name": "ERROR", "no": 40}, "line": 57, "message": "连接服务器失败", "module": "client", "name": "client.core.client", "process": {"id": 17053, "name": "MainProcess"}, "thread": {"id": 140087351580480, "name": "MainThread"}, "time": {"repr": "2025-06-18 16:23:03.404404+08:00", "timestamp": 1750234983.404404}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.064190", "seconds": 0.06419}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 25338, "name": "MainProcess"}, "thread": {"id": 139865015793472, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:04:42.725440+08:00", "timestamp": 1750237482.72544}}}
{"text": "连接服务器失败\n", "record": {"elapsed": {"repr": "0:00:00.066109", "seconds": 0.066109}, "exception": null, "extra": {"name": "client.core.network", "host": "localhost", "port": 8888, "error": "[Errno 111] Connection refused"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "connect", "level": {"icon": "❌", "name": "ERROR", "no": 40}, "line": 57, "message": "连接服务器失败", "module": "client", "name": "client.core.client", "process": {"id": 25338, "name": "MainProcess"}, "thread": {"id": 139865015793472, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:04:42.727359+08:00", "timestamp": 1750237482.727359}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.064418", "seconds": 0.064418}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 27087, "name": "MainProcess"}, "thread": {"id": 140468096096064, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:14:46.135271+08:00", "timestamp": 1750238086.135271}}}
{"text": "连接服务器失败\n", "record": {"elapsed": {"repr": "0:00:00.110150", "seconds": 0.11015}, "exception": null, "extra": {"name": "client.core.network", "host": "47.116.210.212", "port": 8888, "error": "[Errno 111] Connection refused"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "connect", "level": {"icon": "❌", "name": "ERROR", "no": 40}, "line": 57, "message": "连接服务器失败", "module": "client", "name": "client.core.client", "process": {"id": 27087, "name": "MainProcess"}, "thread": {"id": 140468096096064, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:14:46.181003+08:00", "timestamp": 1750238086.181003}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.048021", "seconds": 0.048021}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 27140, "name": "MainProcess"}, "thread": {"id": 139916980901696, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:14:56.005640+08:00", "timestamp": 1750238096.00564}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.051010", "seconds": 0.05101}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:16:12.416204+08:00", "timestamp": 1750238172.416204}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.048476", "seconds": 0.048476}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:16:50.246111+08:00", "timestamp": 1750238210.246111}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.051773", "seconds": 0.051773}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:17:25.551845+08:00", "timestamp": 1750238245.551845}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:50.065331", "seconds": 110.065331}, "exception": null, "extra": {"name": "client.commands", "command": "add", "args": ["1234qwer"], "options": {"-u": "tmp"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:18:02.430525+08:00", "timestamp": 1750238282.430525}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:01:12.287687", "seconds": 72.287687}, "exception": null, "extra": {"name": "client.core.admin", "operation": "add_-u", "message": "用户 tmp (ID: 3) 已创建成功"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139694801147584, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:18:02.485322+08:00", "timestamp": 1750238282.485322}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:00:36.987757", "seconds": 36.987757}, "exception": null, "extra": {"name": "client.core.admin", "operation": "add_-u", "message": "用户 tmp (ID: 3) 已创建成功"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699582392000, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:18:02.487829+08:00", "timestamp": 1750238282.487829}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:50.166047", "seconds": 110.166047}, "exception": null, "extra": {"name": "client.commands", "command": "add", "duration": 0.10084056854248047, "result_length": 20}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:18:02.531241+08:00", "timestamp": 1750238282.531241}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.060932", "seconds": 0.060932}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 28384, "name": "MainProcess"}, "thread": {"id": 139862708332352, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:18:19.101385+08:00", "timestamp": 1750238299.101385}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:51.768130", "seconds": 111.76813}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "args": ["temp0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:18:41.965765+08:00", "timestamp": 1750238321.965765}}}
{"text": "用户操作: test0(1) - command_create_chat\n", "record": {"elapsed": {"repr": "0:01:51.768553", "seconds": 111.768553}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_create_chat", "command_args": ["temp0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_create_chat", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:18:41.966188+08:00", "timestamp": 1750238321.966188}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:51.869238", "seconds": 111.869238}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "duration": 0.10127067565917969, "result_length": 18}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:18:42.066873+08:00", "timestamp": 1750238322.066873}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:55.843869", "seconds": 115.843869}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:18:46.041504+08:00", "timestamp": 1750238326.041504}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:01:55.844289", "seconds": 115.844289}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-g": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:18:46.041924+08:00", "timestamp": 1750238326.041924}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:55.945030", "seconds": 115.94503}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.1012270450592041, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:18:46.142665+08:00", "timestamp": 1750238326.142665}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:06.346399", "seconds": 126.346399}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["temp0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:18:56.544034+08:00", "timestamp": 1750238336.544034}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:02:06.346721", "seconds": 126.346721}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["temp0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:18:56.544356+08:00", "timestamp": 1750238336.544356}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:06.447423", "seconds": 126.447423}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10106229782104492, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:18:56.645058+08:00", "timestamp": 1750238336.645058}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:10.273700", "seconds": 130.2737}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-s": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:19:00.471335+08:00", "timestamp": 1750238340.471335}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:02:10.274018", "seconds": 130.274018}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-s": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:19:00.471653+08:00", "timestamp": 1750238340.471653}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:10.374574", "seconds": 130.374574}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10091829299926758, "result_length": 42}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:19:00.572209+08:00", "timestamp": 1750238340.572209}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:00.147458", "seconds": 120.147458}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:19:25.647530+08:00", "timestamp": 1750238365.64753}}}
{"text": "用户操作: test1(2) - command_join_chat\n", "record": {"elapsed": {"repr": "0:02:00.147721", "seconds": 120.147721}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_join_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_join_chat", "module": "logger", "name": "shared.logger", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:19:25.647793+08:00", "timestamp": 1750238365.647793}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:02:00.248227", "seconds": 120.248227}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.10080409049987793, "error": "聊天组 'test0_g' 不存在"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:19:25.748299+08:00", "timestamp": 1750238365.748299}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:18.115013", "seconds": 138.115013}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["temp0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:19:43.615085+08:00", "timestamp": 1750238383.615085}}}
{"text": "用户操作: test1(2) - command_join_chat\n", "record": {"elapsed": {"repr": "0:02:18.115343", "seconds": 138.115343}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_join_chat", "command_args": ["temp0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_join_chat", "module": "logger", "name": "shared.logger", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:19:43.615415+08:00", "timestamp": 1750238383.615415}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:18.215977", "seconds": 138.215977}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.10099291801452637, "result_length": 17}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:19:43.716049+08:00", "timestamp": 1750238383.716049}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:39.947482", "seconds": 159.947482}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["temp0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:20:05.447554+08:00", "timestamp": 1750238405.447554}}}
{"text": "用户操作: test1(2) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:02:39.947871", "seconds": 159.947871}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_enter_chat", "command_args": ["temp0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:20:05.447943+08:00", "timestamp": 1750238405.447943}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:40.048632", "seconds": 160.048632}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10118460655212402, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:20:05.548704+08:00", "timestamp": 1750238405.548704}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:05:42.753099", "seconds": 342.753099}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:21:55.118293+08:00", "timestamp": 1750238515.118293}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:05:42.859197", "seconds": 342.859197}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.1141061782836914, "result_length": 108}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:21:55.224391+08:00", "timestamp": 1750238515.224391}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:05:50.608368", "seconds": 350.608368}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:22:02.973562+08:00", "timestamp": 1750238522.973562}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:38.640385", "seconds": 278.640385}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 test0 (ID: 1) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699582392000, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:22:04.140457+08:00", "timestamp": 1750238524.140457}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:05:13.942765", "seconds": 313.942765}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 test0 (ID: 1) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139694801147584, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:22:04.140400+08:00", "timestamp": 1750238524.1404}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:03:45.103708", "seconds": 225.103708}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 test0 (ID: 1) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28384, "name": "MainProcess"}, "thread": {"id": 139862418196160, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:22:04.144161+08:00", "timestamp": 1750238524.144161}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:05:51.813184", "seconds": 351.813184}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.2048633098602295, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:22:04.178378+08:00", "timestamp": 1750238524.178378}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:06:01.101288", "seconds": 361.101288}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:22:13.466482+08:00", "timestamp": 1750238533.466482}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:06:01.201985", "seconds": 361.201985}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10074996948242188, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:22:13.567179+08:00", "timestamp": 1750238533.567179}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:06:04.319719", "seconds": 364.319719}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:22:16.684913+08:00", "timestamp": 1750238536.684913}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:03:58.721589", "seconds": 238.721589}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 temp0_g (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28384, "name": "MainProcess"}, "thread": {"id": 139862418196160, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:22:17.762042+08:00", "timestamp": 1750238537.762042}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:52.262069", "seconds": 292.262069}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 temp0_g (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699582392000, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:22:17.762141+08:00", "timestamp": 1750238537.762141}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:05:27.564592", "seconds": 327.564592}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 temp0_g (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139694801147584, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:22:17.762227+08:00", "timestamp": 1750238537.762227}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:06:05.451275", "seconds": 365.451275}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.1315979957580566, "result_length": 23}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:22:17.816469+08:00", "timestamp": 1750238537.816469}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:06:25.509487", "seconds": 385.509487}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:22:37.874681+08:00", "timestamp": 1750238557.874681}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:06:25.610360", "seconds": 385.61036}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10095095634460449, "result_length": 54}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:22:37.975554+08:00", "timestamp": 1750238557.975554}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:06:30.814574", "seconds": 390.814574}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-u": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:22:43.179768+08:00", "timestamp": 1750238563.179768}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:05:17.746964", "seconds": 317.746964}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 test0 (ID: 1) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699582392000, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:22:43.247036+08:00", "timestamp": 1750238563.247036}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:24.206763", "seconds": 264.206763}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 test0 (ID: 1) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28384, "name": "MainProcess"}, "thread": {"id": 139862418196160, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:22:43.247216+08:00", "timestamp": 1750238563.247216}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:05:53.049695", "seconds": 353.049695}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 test0 (ID: 1) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139694801147584, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:22:43.247330+08:00", "timestamp": 1750238563.24733}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:06:30.916471", "seconds": 390.916471}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10193800926208496, "result_length": 22}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:22:43.281665+08:00", "timestamp": 1750238563.281665}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:06:36.100550", "seconds": 396.10055}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:22:48.465744+08:00", "timestamp": 1750238568.465744}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:05:58.350698", "seconds": 358.350698}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 temp0_g (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139694801147584, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:22:48.548333+08:00", "timestamp": 1750238568.548333}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:04:29.507637", "seconds": 269.507637}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 temp0_g (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28384, "name": "MainProcess"}, "thread": {"id": 139862418196160, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:22:48.548090+08:00", "timestamp": 1750238568.54809}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:05:23.048466", "seconds": 323.048466}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 temp0_g (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699582392000, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:22:48.548538+08:00", "timestamp": 1750238568.548538}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:06:36.201224", "seconds": 396.201224}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10071229934692383, "result_length": 24}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:22:48.566418+08:00", "timestamp": 1750238568.566418}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:06:08.993897", "seconds": 368.993897}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "args": ["README.md"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:23:34.493969+08:00", "timestamp": 1750238614.493969}}}
{"text": "用户操作: test1(2) - command_send_files\n", "record": {"elapsed": {"repr": "0:06:08.998438", "seconds": 368.998438}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_send_files", "command_args": ["README.md"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_send_files", "module": "logger", "name": "shared.logger", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:23:34.498510+08:00", "timestamp": 1750238614.49851}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:06:09.301585", "seconds": 369.301585}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "duration": 0.3099486827850342, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:23:34.801657+08:00", "timestamp": 1750238614.801657}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:06:53.382640", "seconds": 413.38264}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:23:43.580275+08:00", "timestamp": 1750238623.580275}}}
{"text": "用户操作: test0(1) - command_recv_files\n", "record": {"elapsed": {"repr": "0:06:53.384940", "seconds": 413.38494}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_recv_files", "command_args": [], "command_options": {"-l": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:23:43.582575+08:00", "timestamp": 1750238623.582575}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:06:53.488853", "seconds": 413.488853}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.10884213447570801, "result_length": 77}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:23:43.686488+08:00", "timestamp": 1750238623.686488}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:07:22.040075", "seconds": 442.040075}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-n": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:24:12.237710+08:00", "timestamp": 1750238652.23771}}}
{"text": "用户操作: test0(1) - command_recv_files\n", "record": {"elapsed": {"repr": "0:07:22.042208", "seconds": 442.042208}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_recv_files", "command_args": [], "command_options": {"-n": "1"}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:24:12.239843+08:00", "timestamp": 1750238652.239843}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:07:24.191671", "seconds": 444.191671}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 2.1516809463500977, "result_length": 40}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:24:14.389306+08:00", "timestamp": 1750238654.389306}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:10:15.741904", "seconds": 615.741904}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:26:28.107098+08:00", "timestamp": 1750238788.107098}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:10:15.858843", "seconds": 615.858843}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.12309503555297852, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:26:28.224037+08:00", "timestamp": 1750238788.224037}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:10:27.784232", "seconds": 627.784232}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:26:40.149426+08:00", "timestamp": 1750238800.149426}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:10:27.889884", "seconds": 627.889884}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10569524765014648, "error": "聊天组 'test0_g' 不存在"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:26:40.255078+08:00", "timestamp": 1750238800.255078}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:10:38.174710", "seconds": 638.17471}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["temp0_"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:26:50.539904+08:00", "timestamp": 1750238810.539904}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:10:38.278323", "seconds": 638.278323}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.1036536693572998, "error": "聊天组 'temp0_' 不存在"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:26:50.643517+08:00", "timestamp": 1750238810.643517}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:10:46.707680", "seconds": 646.70768}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["temp0_G"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:26:59.072874+08:00", "timestamp": 1750238819.072874}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:10:46.808280", "seconds": 646.80828}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.10062861442565918, "error": "聊天组 'temp0_G' 不存在"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:26:59.173474+08:00", "timestamp": 1750238819.173474}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:10:53.978113", "seconds": 653.978113}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["temp0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:06.343307+08:00", "timestamp": 1750238826.343307}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:10:54.078976", "seconds": 654.078976}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.10090112686157227, "result_length": 17}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:06.444170+08:00", "timestamp": 1750238826.44417}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:10:59.585116", "seconds": 659.585116}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["temp0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:11.950310+08:00", "timestamp": 1750238831.95031}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:10:59.686100", "seconds": 659.6861}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.1010744571685791, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:12.051294+08:00", "timestamp": 1750238832.051294}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:11:05.955025", "seconds": 665.955025}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:18.320219+08:00", "timestamp": 1750238838.320219}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:11:05.956508", "seconds": 665.956508}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.001529693603515625, "error": "未知选项: -。支持的选项: -u, -s, -c, -g, -f"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:18.321702+08:00", "timestamp": 1750238838.321702}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:11:09.667637", "seconds": 669.667637}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-f": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:22.032831+08:00", "timestamp": 1750238842.032831}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:11:09.770496", "seconds": 669.770496}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10290217399597168, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:22.135690+08:00", "timestamp": 1750238842.13569}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:11:22.000354", "seconds": 682.000354}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:34.365548+08:00", "timestamp": 1750238854.365548}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:11:22.101206", "seconds": 682.101206}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.1009056568145752, "result_length": 77}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:34.466400+08:00", "timestamp": 1750238854.4664}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:11:27.592210", "seconds": 687.59221}, "exception": null, "extra": {"name": "client.commands", "command": "del", "args": [], "options": {"-f": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:39.957404+08:00", "timestamp": 1750238859.957404}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:10:15.683289", "seconds": 615.683289}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-f", "message": "文件 README.md (ID: 1) 已被删除\n上传者: test1\n所属群组: temp0_g"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699582392000, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:27:41.183361+08:00", "timestamp": 1750238861.183361}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:10:50.989146", "seconds": 650.989146}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-f", "message": "文件 README.md (ID: 1) 已被删除\n上传者: test1\n所属群组: temp0_g"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139694801147584, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:27:41.186781+08:00", "timestamp": 1750238861.186781}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:09:22.146421", "seconds": 562.146421}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-f", "message": "文件 README.md (ID: 1) 已被删除\n上传者: test1\n所属群组: temp0_g"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28384, "name": "MainProcess"}, "thread": {"id": 139862418196160, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:27:41.186874+08:00", "timestamp": 1750238861.186874}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:11:28.863196", "seconds": 688.863196}, "exception": null, "extra": {"name": "client.commands", "command": "del", "duration": 1.2710332870483398, "result_length": 50}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:41.228390+08:00", "timestamp": 1750238861.22839}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:11:35.331973", "seconds": 695.331973}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["public"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:47.697167+08:00", "timestamp": 1750238867.697167}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:11:35.434351", "seconds": 695.434351}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10241222381591797, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:47.799545+08:00", "timestamp": 1750238867.799545}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:11:43.955885", "seconds": 703.955885}, "exception": null, "extra": {"name": "client.commands", "command": "del", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:56.321079+08:00", "timestamp": 1750238876.321079}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:10:32.111617", "seconds": 632.111617}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-g", "message": "群组 temp0_g (ID: 2) 已被删除"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699582392000, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:27:57.611689+08:00", "timestamp": 1750238877.611689}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:11:07.413983", "seconds": 667.413983}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-g", "message": "群组 temp0_g (ID: 2) 已被删除"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139694801147584, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:27:57.611618+08:00", "timestamp": 1750238877.611618}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:09:38.571643", "seconds": 578.571643}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-g", "message": "群组 temp0_g (ID: 2) 已被删除"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28384, "name": "MainProcess"}, "thread": {"id": 139862418196160, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:27:57.612096+08:00", "timestamp": 1750238877.612096}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:11:45.298390", "seconds": 705.29839}, "exception": null, "extra": {"name": "client.commands", "command": "del", "duration": 1.3425588607788086, "result_length": 23}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:27:57.663584+08:00", "timestamp": 1750238877.663584}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:11:21.194606", "seconds": 681.194606}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["public"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:11.392241+08:00", "timestamp": 1750238891.392241}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:11:21.195000", "seconds": 681.195}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["public"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:11.392635+08:00", "timestamp": 1750238891.392635}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:11:21.298043", "seconds": 681.298043}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10357093811035156, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:11.495678+08:00", "timestamp": 1750238891.495678}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:10:52.593127", "seconds": 652.593127}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["public"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:18.093199+08:00", "timestamp": 1750238898.093199}}}
{"text": "用户操作: test1(2) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:10:52.593539", "seconds": 652.593539}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_enter_chat", "command_args": ["public"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:18.093611+08:00", "timestamp": 1750238898.093611}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:10:52.694096", "seconds": 652.694096}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10102200508117676, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:18.194168+08:00", "timestamp": 1750238898.194168}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:12:13.888439", "seconds": 733.888439}, "exception": null, "extra": {"name": "client.commands", "command": "?", "args": [], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:26.253633+08:00", "timestamp": 1750238906.253633}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:12:13.892016", "seconds": 733.892016}, "exception": null, "extra": {"name": "client.commands", "command": "?", "duration": 0.0036215782165527344, "result_length": 393}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:26.257210+08:00", "timestamp": 1750238906.25721}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:11:47.068037", "seconds": 707.068037}, "exception": null, "extra": {"name": "client.commands", "command": "?", "args": [], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:37.265672+08:00", "timestamp": 1750238917.265672}}}
{"text": "用户操作: test0(1) - command_?\n", "record": {"elapsed": {"repr": "0:11:47.070683", "seconds": 707.070683}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_?", "command_args": [], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_?", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:37.268318+08:00", "timestamp": 1750238917.268318}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:11:47.071504", "seconds": 707.071504}, "exception": null, "extra": {"name": "client.commands", "command": "?", "duration": 0.003504514694213867, "result_length": 393}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:37.269139+08:00", "timestamp": 1750238917.269139}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:11:57.813690", "seconds": 717.81369}, "exception": null, "extra": {"name": "client.commands", "command": "info", "args": [], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:48.011325+08:00", "timestamp": 1750238928.011325}}}
{"text": "用户操作: test0(1) - command_info\n", "record": {"elapsed": {"repr": "0:11:57.816470", "seconds": 717.81647}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_info", "command_args": [], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_info", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:48.014105+08:00", "timestamp": 1750238928.014105}}}
{"text": "命令执行异常\n", "record": {"elapsed": {"repr": "0:11:57.918297", "seconds": 717.918297}, "exception": null, "extra": {"name": "client.commands", "command": "info", "duration": 0.10456204414367676, "error": "'dict' object has no attribute 'user_id'", "exc_info": true}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "❌", "name": "ERROR", "no": 40}, "line": 430, "message": "命令执行异常", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:48.115932+08:00", "timestamp": 1750238928.115932}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:12:07.820372", "seconds": 727.820372}, "exception": null, "extra": {"name": "client.commands", "command": "ai", "args": [], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:58.018007+08:00", "timestamp": 1750238938.018007}}}
{"text": "用户操作: test0(1) - command_ai\n", "record": {"elapsed": {"repr": "0:12:07.820704", "seconds": 727.820704}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_ai", "command_args": [], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_ai", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:58.018339+08:00", "timestamp": 1750238938.018339}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:12:07.823855", "seconds": 727.823855}, "exception": null, "extra": {"name": "client.commands", "command": "ai", "duration": 0.003522634506225586, "error": "请指定AI命令: status, clear, help 或直接输入消息"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:28:58.021490+08:00", "timestamp": 1750238938.02149}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:12:11.877417", "seconds": 731.877417}, "exception": null, "extra": {"name": "client.commands", "command": "ai", "args": ["status"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:02.075052+08:00", "timestamp": 1750238942.075052}}}
{"text": "用户操作: test0(1) - command_ai\n", "record": {"elapsed": {"repr": "0:12:11.879965", "seconds": 731.879965}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_ai", "command_args": ["status"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_ai", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:02.077600+08:00", "timestamp": 1750238942.0776}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:12:12.883733", "seconds": 732.883733}, "exception": null, "extra": {"name": "client.commands", "command": "ai", "duration": 1.0063529014587402, "result_length": 74}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:03.081368+08:00", "timestamp": 1750238943.081368}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:12:20.164130", "seconds": 740.16413}, "exception": null, "extra": {"name": "client.commands", "command": "ai", "args": ["clear"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:10.361765+08:00", "timestamp": 1750238950.361765}}}
{"text": "用户操作: test0(1) - command_ai\n", "record": {"elapsed": {"repr": "0:12:20.164512", "seconds": 740.164512}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_ai", "command_args": ["clear"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_ai", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:10.362147+08:00", "timestamp": 1750238950.362147}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:12:20.265210", "seconds": 740.26521}, "exception": null, "extra": {"name": "client.commands", "command": "ai", "duration": 0.10112738609313965, "result_length": 12}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:10.462845+08:00", "timestamp": 1750238950.462845}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:12:23.540377", "seconds": 743.540377}, "exception": null, "extra": {"name": "client.commands", "command": "ai", "args": ["help"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:13.738012+08:00", "timestamp": 1750238953.738012}}}
{"text": "用户操作: test0(1) - command_ai\n", "record": {"elapsed": {"repr": "0:12:23.543173", "seconds": 743.543173}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_ai", "command_args": ["help"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_ai", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:13.740808+08:00", "timestamp": 1750238953.740808}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:12:23.644200", "seconds": 743.6442}, "exception": null, "extra": {"name": "client.commands", "command": "ai", "duration": 0.10391879081726074, "result_length": 120}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:13.841835+08:00", "timestamp": 1750238953.841835}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:13:27.087729", "seconds": 807.087729}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:39.452923+08:00", "timestamp": 1750238979.452923}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:13:27.090607", "seconds": 807.090607}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "duration": 0.003024578094482422, "error": "用法: /modify -u <用户ID> <字段> <新值>"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:39.455801+08:00", "timestamp": 1750238979.455801}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:13:29.961095", "seconds": 809.961095}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:42.326289+08:00", "timestamp": 1750238982.326289}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:13:30.061747", "seconds": 810.061747}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10069537162780762, "result_length": 108}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:42.426941+08:00", "timestamp": 1750238982.426941}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:13:44.539929", "seconds": 824.539929}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "args": ["username", "test2"], "options": {"-u": "3"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:56.905123+08:00", "timestamp": 1750238996.905123}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:13:06.816570", "seconds": 786.81657}, "exception": null, "extra": {"name": "client.core.admin", "operation": "modify_-u", "message": "用户 tmp 的用户名已修改为 test2"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139694801147584, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:29:57.014205+08:00", "timestamp": 1750238997.014205}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:11:37.975167", "seconds": 697.975167}, "exception": null, "extra": {"name": "client.core.admin", "operation": "modify_-u", "message": "用户 tmp 的用户名已修改为 test2"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28384, "name": "MainProcess"}, "thread": {"id": 139862418196160, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:29:57.015620+08:00", "timestamp": 1750238997.01562}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:12:31.530725", "seconds": 751.530725}, "exception": null, "extra": {"name": "client.core.admin", "operation": "modify_-u", "message": "用户 tmp 的用户名已修改为 test2"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1206, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699582392000, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-18 17:29:57.030797+08:00", "timestamp": 1750238997.030797}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:13:44.740999", "seconds": 824.740999}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "duration": 0.20113110542297363, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:29:57.106193+08:00", "timestamp": 1750238997.106193}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:11:45.369849", "seconds": 705.369849}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 28384, "name": "MainProcess"}, "thread": {"id": 139862708332352, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:30:04.410302+08:00", "timestamp": 1750239004.410302}}}
{"text": "用户操作: tmp(3) - command_list\n", "record": {"elapsed": {"repr": "0:11:45.370801", "seconds": 705.370801}, "exception": null, "extra": {"user_id": 3, "username": "tmp", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: tmp(3) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 28384, "name": "MainProcess"}, "thread": {"id": 139862708332352, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:30:04.411254+08:00", "timestamp": 1750239004.411254}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:11:45.471821", "seconds": 705.471821}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10233497619628906, "result_length": 110}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 28384, "name": "MainProcess"}, "thread": {"id": 139862708332352, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:30:04.512274+08:00", "timestamp": 1750239004.512274}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:13:54.112649", "seconds": 834.112649}, "exception": null, "extra": {"name": "client.commands", "command": "exi", "input": "/exi"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 394, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 28056, "name": "MainProcess"}, "thread": {"id": 140699737913152, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:31:19.612721+08:00", "timestamp": 1750239079.612721}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:14:43.969029", "seconds": 883.969029}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:31:34.166664+08:00", "timestamp": 1750239094.166664}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:14:43.969747", "seconds": 883.969747}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:31:34.167382+08:00", "timestamp": 1750239094.167382}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:14:44.072809", "seconds": 884.072809}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10390210151672363, "result_length": 110}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27759, "name": "MainProcess"}, "thread": {"id": 139695068522304, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:31:34.270444+08:00", "timestamp": 1750239094.270444}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:15:40.140191", "seconds": 940.140191}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:31:52.505385+08:00", "timestamp": 1750239112.505385}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:15:40.241146", "seconds": 940.241146}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10109472274780273, "result_length": 110}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 27390, "name": "MainProcess"}, "thread": {"id": 140101899089728, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:31:52.606340+08:00", "timestamp": 1750239112.60634}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.058663", "seconds": 0.058663}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 30924, "name": "MainProcess"}, "thread": {"id": 139743827494720, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:32:08.470988+08:00", "timestamp": 1750239128.470988}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:13.851042", "seconds": 13.851042}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 30924, "name": "MainProcess"}, "thread": {"id": 139743827494720, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:32:22.263367+08:00", "timestamp": 1750239142.263367}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:13.952131", "seconds": 13.952131}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10123491287231445, "result_length": 110}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 30924, "name": "MainProcess"}, "thread": {"id": 139743827494720, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:32:22.364456+08:00", "timestamp": 1750239142.364456}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.048325", "seconds": 0.048325}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 34895, "name": "MainProcess"}, "thread": {"id": 139693832841024, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:52:13.312768+08:00", "timestamp": 1750240333.312768}}}
{"text": "连接服务器失败\n", "record": {"elapsed": {"repr": "0:00:00.090968", "seconds": 0.090968}, "exception": null, "extra": {"name": "client.core.network", "host": "47.116.210.212", "port": 8889, "error": "[Errno 111] Connection refused"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "connect", "level": {"icon": "❌", "name": "ERROR", "no": 40}, "line": 57, "message": "连接服务器失败", "module": "client", "name": "client.core.client", "process": {"id": 34895, "name": "MainProcess"}, "thread": {"id": 139693832841024, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:52:13.355411+08:00", "timestamp": 1750240333.355411}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.062191", "seconds": 0.062191}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 35738, "name": "MainProcess"}, "thread": {"id": 140279353489216, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:55:44.954287+08:00", "timestamp": 1750240544.954287}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.045484", "seconds": 0.045484}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 35794, "name": "MainProcess"}, "thread": {"id": 140319542974272, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:55:58.390770+08:00", "timestamp": 1750240558.39077}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:33.240589", "seconds": 33.240589}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 35738, "name": "MainProcess"}, "thread": {"id": 140279353489216, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:56:18.132685+08:00", "timestamp": 1750240578.132685}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:33.341803", "seconds": 33.341803}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10135006904602051, "result_length": 110}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 35738, "name": "MainProcess"}, "thread": {"id": 140279353489216, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:56:18.233899+08:00", "timestamp": 1750240578.233899}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:00:23.483108", "seconds": 23.483108}, "exception": null, "extra": {"name": "client.commands", "command": "eixt", "input": "/eixt"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 394, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 35794, "name": "MainProcess"}, "thread": {"id": 140319542974272, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:56:21.828394+08:00", "timestamp": 1750240581.828394}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:51.509136", "seconds": 51.509136}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 35738, "name": "MainProcess"}, "thread": {"id": 140279353489216, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:56:36.401232+08:00", "timestamp": 1750240596.401232}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:51.609880", "seconds": 51.60988}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10080790519714355, "result_length": 110}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 35738, "name": "MainProcess"}, "thread": {"id": 140279353489216, "name": "MainThread"}, "time": {"repr": "2025-06-18 17:56:36.501976+08:00", "timestamp": 1750240596.501976}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.070404", "seconds": 0.070404}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 6055, "name": "MainProcess"}, "thread": {"id": 140684629563200, "name": "MainThread"}, "time": {"repr": "2025-06-18 19:32:36.951467+08:00", "timestamp": 1750246356.951467}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.064620", "seconds": 0.06462}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 3595, "name": "MainProcess"}, "thread": {"id": 139843374843712, "name": "MainThread"}, "time": {"repr": "2025-06-19 16:27:00.960616+08:00", "timestamp": 1750321620.960616}}}
{"text": "连接服务器失败\n", "record": {"elapsed": {"repr": "0:00:00.065436", "seconds": 0.065436}, "exception": null, "extra": {"name": "client.core.network", "host": "localhost", "port": 8888, "error": "[Errno 111] Connection refused"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "connect", "level": {"icon": "❌", "name": "ERROR", "no": 40}, "line": 57, "message": "连接服务器失败", "module": "client", "name": "client.core.client", "process": {"id": 3595, "name": "MainProcess"}, "thread": {"id": 139843374843712, "name": "MainThread"}, "time": {"repr": "2025-06-19 16:27:00.961432+08:00", "timestamp": 1750321620.961432}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.053096", "seconds": 0.053096}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 3778, "name": "MainProcess"}, "thread": {"id": 139870480574272, "name": "MainThread"}, "time": {"repr": "2025-06-19 16:27:37.308663+08:00", "timestamp": 1750321657.308663}}}
{"text": "连接服务器失败\n", "record": {"elapsed": {"repr": "0:00:00.053900", "seconds": 0.0539}, "exception": null, "extra": {"name": "client.core.network", "host": "localhost", "port": 8888, "error": "[Errno 111] Connection refused"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "connect", "level": {"icon": "❌", "name": "ERROR", "no": 40}, "line": 57, "message": "连接服务器失败", "module": "client", "name": "client.core.client", "process": {"id": 3778, "name": "MainProcess"}, "thread": {"id": 139870480574272, "name": "MainThread"}, "time": {"repr": "2025-06-19 16:27:37.309467+08:00", "timestamp": 1750321657.309467}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.065987", "seconds": 0.065987}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 2617, "name": "MainProcess"}, "thread": {"id": 139907957860160, "name": "MainThread"}, "time": {"repr": "2025-06-19 16:30:21.967506+08:00", "timestamp": 1750321821.967506}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.061181", "seconds": 0.061181}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 6994, "name": "MainProcess"}, "thread": {"id": 140052066117440, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:09:23.299759+08:00", "timestamp": 1750324163.299759}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.052862", "seconds": 0.052862}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 7240, "name": "MainProcess"}, "thread": {"id": 139818078328640, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:09:53.842524+08:00", "timestamp": 1750324193.842524}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:47.586202", "seconds": 47.586202}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 6994, "name": "MainProcess"}, "thread": {"id": 140052066117440, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:10:10.824780+08:00", "timestamp": 1750324210.82478}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:47.687155", "seconds": 47.687155}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10109424591064453, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 6994, "name": "MainProcess"}, "thread": {"id": 140052066117440, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:10:10.925733+08:00", "timestamp": 1750324210.925733}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:04.765418", "seconds": 124.765418}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 6994, "name": "MainProcess"}, "thread": {"id": 140052066117440, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:11:28.003996+08:00", "timestamp": 1750324288.003996}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:04.866865", "seconds": 124.866865}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10351681709289551, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 6994, "name": "MainProcess"}, "thread": {"id": 140052066117440, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:11:28.105443+08:00", "timestamp": 1750324288.105443}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.065427", "seconds": 0.065427}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 7585, "name": "MainProcess"}, "thread": {"id": 140619312211776, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:11:40.913783+08:00", "timestamp": 1750324300.913783}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:36.546077", "seconds": 156.546077}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 6994, "name": "MainProcess"}, "thread": {"id": 140052066117440, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:11:59.784655+08:00", "timestamp": 1750324319.784655}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:36.646786", "seconds": 156.646786}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.1007685661315918, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 6994, "name": "MainProcess"}, "thread": {"id": 140052066117440, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:11:59.885364+08:00", "timestamp": 1750324319.885364}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.047540", "seconds": 0.04754}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 8919, "name": "MainProcess"}, "thread": {"id": 139684251572032, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:17:31.630901+08:00", "timestamp": 1750324651.630901}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:16.731894", "seconds": 16.731894}, "exception": null, "extra": {"name": "client.commands", "command": "login", "args": ["test0", "123456"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 8919, "name": "MainProcess"}, "thread": {"id": 139684251572032, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:17:48.315255+08:00", "timestamp": 1750324668.315255}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:16.732595", "seconds": 16.732595}, "exception": null, "extra": {"name": "client.commands", "command": "login", "duration": 0.0008740425109863281, "result_length": 13}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 8919, "name": "MainProcess"}, "thread": {"id": 139684251572032, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:17:48.315956+08:00", "timestamp": 1750324668.315956}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.051873", "seconds": 0.051873}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 9791, "name": "MainProcess"}, "thread": {"id": 139668033623872, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:19:38.488044+08:00", "timestamp": 1750324778.488044}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.051275", "seconds": 0.051275}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 10045, "name": "MainProcess"}, "thread": {"id": 140491217659712, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:20:39.066816+08:00", "timestamp": 1750324839.066816}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.054914", "seconds": 0.054914}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:20:42.163740+08:00", "timestamp": 1750324842.16374}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:34.998683", "seconds": 34.998683}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:17.107509+08:00", "timestamp": 1750324877.107509}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:00:34.998988", "seconds": 34.998988}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:17.107814+08:00", "timestamp": 1750324877.107814}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:35.099491", "seconds": 35.099491}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10088562965393066, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:17.208317+08:00", "timestamp": 1750324877.208317}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:39.671522", "seconds": 39.671522}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:21.780348+08:00", "timestamp": 1750324881.780348}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:00:39.671867", "seconds": 39.671867}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:21.780693+08:00", "timestamp": 1750324881.780693}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:39.772474", "seconds": 39.772474}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10098886489868164, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:21.881300+08:00", "timestamp": 1750324881.8813}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:42.874676", "seconds": 42.874676}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:24.983502+08:00", "timestamp": 1750324884.983502}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:00:42.875128", "seconds": 42.875128}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-g": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:24.983954+08:00", "timestamp": 1750324884.983954}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:42.975703", "seconds": 42.975703}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10108160972595215, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:25.084529+08:00", "timestamp": 1750324885.084529}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:49.481195", "seconds": 49.481195}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:31.590021+08:00", "timestamp": 1750324891.590021}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:00:49.481531", "seconds": 49.481531}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:31.590357+08:00", "timestamp": 1750324891.590357}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:49.581988", "seconds": 49.581988}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10084795951843262, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:31.690814+08:00", "timestamp": 1750324891.690814}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:58.234827", "seconds": 58.234827}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-f": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:40.343653+08:00", "timestamp": 1750324900.343653}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:00:58.235198", "seconds": 58.235198}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-f": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:40.344024+08:00", "timestamp": 1750324900.344024}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:58.335758", "seconds": 58.335758}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10097384452819824, "result_length": 53}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:40.444584+08:00", "timestamp": 1750324900.444584}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:03.555410", "seconds": 63.55541}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:45.664236+08:00", "timestamp": 1750324905.664236}}}
{"text": "用户操作: test0(1) - command_recv_files\n", "record": {"elapsed": {"repr": "0:01:03.555776", "seconds": 63.555776}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_recv_files", "command_args": [], "command_options": {"-l": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:45.664602+08:00", "timestamp": 1750324905.664602}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:06.422405", "seconds": 66.422405}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 2.867036819458008, "result_length": 78}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:21:48.531231+08:00", "timestamp": 1750324908.531231}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:20.624173", "seconds": 80.624173}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-n": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:22:02.732999+08:00", "timestamp": 1750324922.732999}}}
{"text": "用户操作: test0(1) - command_recv_files\n", "record": {"elapsed": {"repr": "0:01:20.624641", "seconds": 80.624641}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_recv_files", "command_args": [], "command_options": {"-n": "2"}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:22:02.733467+08:00", "timestamp": 1750324922.733467}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:22.740465", "seconds": 82.740465}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 2.1163668632507324, "result_length": 40}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:22:04.849291+08:00", "timestamp": 1750324924.849291}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:48.887785", "seconds": 108.887785}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 10045, "name": "MainProcess"}, "thread": {"id": 140491217659712, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:22:27.903326+08:00", "timestamp": 1750324947.903326}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:48.988877", "seconds": 108.988877}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10125255584716797, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 10045, "name": "MainProcess"}, "thread": {"id": 140491217659712, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:22:28.004418+08:00", "timestamp": 1750324948.004418}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:54.127126", "seconds": 114.127126}, "exception": null, "extra": {"name": "client.commands", "command": "del", "args": [], "options": {"-f": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 10045, "name": "MainProcess"}, "thread": {"id": 140491217659712, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:22:33.142667+08:00", "timestamp": 1750324953.142667}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:01:52.142558", "seconds": 112.142558}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-f", "message": "文件 README.md (ID: 2) 已被删除\n上传者: test0\n所属群组: test0_g"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139647640401600, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-19 17:22:34.251384+08:00", "timestamp": 1750324954.251384}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:55.318154", "seconds": 115.318154}, "exception": null, "extra": {"name": "client.commands", "command": "del", "duration": 1.1911189556121826, "result_length": 50}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 10045, "name": "MainProcess"}, "thread": {"id": 140491217659712, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:22:34.333695+08:00", "timestamp": 1750324954.333695}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:11.395750", "seconds": 131.39575}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "args": ["/home/student/Code/CN/Chat-Room/client/Downloads/test0/README.md"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:22:53.504576+08:00", "timestamp": 1750324973.504576}}}
{"text": "用户操作: test0(1) - command_send_files\n", "record": {"elapsed": {"repr": "0:02:11.396002", "seconds": 131.396002}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_send_files", "command_args": ["/home/student/Code/CN/Chat-Room/client/Downloads/test0/README.md"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_send_files", "module": "logger", "name": "shared.logger", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:22:53.504828+08:00", "timestamp": 1750324973.504828}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:11.596863", "seconds": 131.596863}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "duration": 0.20116853713989258, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 10088, "name": "MainProcess"}, "thread": {"id": 139648042813248, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:22:53.705689+08:00", "timestamp": 1750324973.705689}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:51.089405", "seconds": 171.089405}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 10045, "name": "MainProcess"}, "thread": {"id": 140491217659712, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:23:30.104946+08:00", "timestamp": 1750325010.104946}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:51.190323", "seconds": 171.190323}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.10096502304077148, "result_length": 78}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 10045, "name": "MainProcess"}, "thread": {"id": 140491217659712, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:23:30.205864+08:00", "timestamp": 1750325010.205864}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.038891", "seconds": 0.038891}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 13500, "name": "MainProcess"}, "thread": {"id": 140192546744128, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:36:50.621773+08:00", "timestamp": 1750325810.621773}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:47.635055", "seconds": 47.635055}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0_g"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 13500, "name": "MainProcess"}, "thread": {"id": 140192546744128, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:37:38.217937+08:00", "timestamp": 1750325858.217937}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:00:47.635400", "seconds": 47.6354}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["test0_g"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 13500, "name": "MainProcess"}, "thread": {"id": 140192546744128, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:37:38.218282+08:00", "timestamp": 1750325858.218282}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:47.736062", "seconds": 47.736062}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.1010594367980957, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 13500, "name": "MainProcess"}, "thread": {"id": 140192546744128, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:37:38.318944+08:00", "timestamp": 1750325858.318944}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:52.089509", "seconds": 52.089509}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "args": ["/home/student/Code/CN/Chat-Room/test_upload.txt"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 13500, "name": "MainProcess"}, "thread": {"id": 140192546744128, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:37:42.672391+08:00", "timestamp": 1750325862.672391}}}
{"text": "用户操作: test0(1) - command_send_files\n", "record": {"elapsed": {"repr": "0:00:52.089821", "seconds": 52.089821}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_send_files", "command_args": ["/home/student/Code/CN/Chat-Room/test_upload.txt"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_send_files", "module": "logger", "name": "shared.logger", "process": {"id": 13500, "name": "MainProcess"}, "thread": {"id": 140192546744128, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:37:42.672703+08:00", "timestamp": 1750325862.672703}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:52.290438", "seconds": 52.290438}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "duration": 0.2010021209716797, "result_length": 27}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 13500, "name": "MainProcess"}, "thread": {"id": 140192546744128, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:37:42.873320+08:00", "timestamp": 1750325862.87332}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.075521", "seconds": 0.075521}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:52:05.379565+08:00", "timestamp": 1750326725.379565}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.064514", "seconds": 0.064514}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:52:58.434701+08:00", "timestamp": 1750326778.434701}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:12.200256", "seconds": 12.200256}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:53:10.570443+08:00", "timestamp": 1750326790.570443}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:00:12.200626", "seconds": 12.200626}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:53:10.570813+08:00", "timestamp": 1750326790.570813}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:12.301230", "seconds": 12.30123}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.1010434627532959, "result_length": 110}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:53:10.671417+08:00", "timestamp": 1750326790.671417}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:20.906804", "seconds": 80.906804}, "exception": null, "extra": {"name": "client.commands", "command": "del", "args": ["3"], "options": {"-u": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:53:26.210848+08:00", "timestamp": 1750326806.210848}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:00:29.929071", "seconds": 29.929071}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-u", "message": "用户 test1 (ID: 2) 已被删除"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140655800080064, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-19 17:53:28.299258+08:00", "timestamp": 1750326808.299258}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:23.047761", "seconds": 83.047761}, "exception": null, "extra": {"name": "client.commands", "command": "del", "duration": 2.142132043838501, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:53:28.351805+08:00", "timestamp": 1750326808.351805}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:28.569742", "seconds": 88.569742}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:53:33.873786+08:00", "timestamp": 1750326813.873786}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:28.670395", "seconds": 88.670395}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.1007072925567627, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:53:33.974439+08:00", "timestamp": 1750326813.974439}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:37.073203", "seconds": 97.073203}, "exception": null, "extra": {"name": "client.commands", "command": "del", "args": [], "options": {"-u": "3"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:53:42.377247+08:00", "timestamp": 1750326822.377247}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:00:45.168578", "seconds": 45.168578}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-u", "message": "用户 test2 (ID: 3) 已被删除"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140655800080064, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-19 17:53:43.538765+08:00", "timestamp": 1750326823.538765}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:38.273575", "seconds": 98.273575}, "exception": null, "extra": {"name": "client.commands", "command": "del", "duration": 1.2004096508026123, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:53:43.577619+08:00", "timestamp": 1750326823.577619}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:50.885253", "seconds": 110.885253}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:53:56.189297+08:00", "timestamp": 1750326836.189297}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:50.986117", "seconds": 110.986117}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.1009526252746582, "result_length": 29}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:53:56.290161+08:00", "timestamp": 1750326836.290161}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:53.464493", "seconds": 113.464493}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-c": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:53:58.768537+08:00", "timestamp": 1750326838.768537}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:53.565230", "seconds": 113.56523}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10078644752502441, "result_length": 35}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:53:58.869274+08:00", "timestamp": 1750326838.869274}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:55.409265", "seconds": 115.409265}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-f": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:54:00.713309+08:00", "timestamp": 1750326840.713309}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:55.510361", "seconds": 115.510361}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10112524032592773, "result_length": 9}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:54:00.814405+08:00", "timestamp": 1750326840.814405}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.058181", "seconds": 0.058181}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 18912, "name": "MainProcess"}, "thread": {"id": 139758879471424, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:54:34.516672+08:00", "timestamp": 1750326874.516672}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:00:17.860146", "seconds": 17.860146}, "exception": null, "extra": {"name": "client.commands", "command": "sigin", "input": "/sigin"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 394, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18912, "name": "MainProcess"}, "thread": {"id": 139758879471424, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:54:52.318637+08:00", "timestamp": 1750326892.318637}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:17.253650", "seconds": 137.25365}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:15.623837+08:00", "timestamp": 1750326915.623837}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:02:17.254103", "seconds": 137.254103}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:15.624290+08:00", "timestamp": 1750326915.62429}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:17.354763", "seconds": 137.354763}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10123538970947266, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:15.724950+08:00", "timestamp": 1750326915.72495}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:55.857498", "seconds": 55.857498}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "args": ["testg0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18912, "name": "MainProcess"}, "thread": {"id": 139758879471424, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:30.315989+08:00", "timestamp": 1750326930.315989}}}
{"text": "用户操作: test1(4) - command_create_chat\n", "record": {"elapsed": {"repr": "0:00:55.857768", "seconds": 55.857768}, "exception": null, "extra": {"user_id": 4, "username": "test1", "action": "command_create_chat", "command_args": ["testg0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(4) - command_create_chat", "module": "logger", "name": "shared.logger", "process": {"id": 18912, "name": "MainProcess"}, "thread": {"id": 139758879471424, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:30.316259+08:00", "timestamp": 1750326930.316259}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:55.958279", "seconds": 55.958279}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "duration": 0.1008155345916748, "result_length": 17}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18912, "name": "MainProcess"}, "thread": {"id": 139758879471424, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:30.416770+08:00", "timestamp": 1750326930.41677}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:04.507073", "seconds": 64.507073}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["testg0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18912, "name": "MainProcess"}, "thread": {"id": 139758879471424, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:38.965564+08:00", "timestamp": 1750326938.965564}}}
{"text": "用户操作: test1(4) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:01:04.507453", "seconds": 64.507453}, "exception": null, "extra": {"user_id": 4, "username": "test1", "action": "command_enter_chat", "command_args": ["testg0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(4) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 18912, "name": "MainProcess"}, "thread": {"id": 139758879471424, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:38.965944+08:00", "timestamp": 1750326938.965944}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:04.608209", "seconds": 64.608209}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10115933418273926, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18912, "name": "MainProcess"}, "thread": {"id": 139758879471424, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:39.066700+08:00", "timestamp": 1750326939.0667}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:49.050585", "seconds": 169.050585}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["testg0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:47.420772+08:00", "timestamp": 1750326947.420772}}}
{"text": "用户操作: test0(1) - command_join_chat\n", "record": {"elapsed": {"repr": "0:02:49.050982", "seconds": 169.050982}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_join_chat", "command_args": ["testg0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_join_chat", "module": "logger", "name": "shared.logger", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:47.421169+08:00", "timestamp": 1750326947.421169}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:49.151771", "seconds": 169.151771}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.10123968124389648, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:47.521958+08:00", "timestamp": 1750326947.521958}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:53.754077", "seconds": 173.754077}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["testg0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:52.124264+08:00", "timestamp": 1750326952.124264}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:02:53.754293", "seconds": 173.754293}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["testg0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:52.124480+08:00", "timestamp": 1750326952.12448}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:53.854946", "seconds": 173.854946}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10089111328125, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:55:52.225133+08:00", "timestamp": 1750326952.225133}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:18.784752", "seconds": 258.784752}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["testg0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:56:24.088796+08:00", "timestamp": 1750326984.088796}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:18.889089", "seconds": 258.889089}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.10440754890441895, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:56:24.193133+08:00", "timestamp": 1750326984.193133}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:29.316289", "seconds": 269.316289}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["testg0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:56:34.620333+08:00", "timestamp": 1750326994.620333}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:29.432474", "seconds": 269.432474}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.11622190475463867, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:56:34.736518+08:00", "timestamp": 1750326994.736518}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:14.529453", "seconds": 254.529453}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "args": ["/home/student/Code/CN/Chat-Room/client/Downloads/test0/README.md"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:57:12.899640+08:00", "timestamp": 1750327032.89964}}}
{"text": "用户操作: test0(1) - command_send_files\n", "record": {"elapsed": {"repr": "0:04:14.533527", "seconds": 254.533527}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_send_files", "command_args": ["/home/student/Code/CN/Chat-Room/client/Downloads/test0/README.md"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_send_files", "module": "logger", "name": "shared.logger", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:57:12.903714+08:00", "timestamp": 1750327032.903714}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:14.844778", "seconds": 254.844778}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "duration": 0.31670069694519043, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:57:13.214965+08:00", "timestamp": 1750327033.214965}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:05:22.524215", "seconds": 322.524215}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-f": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:57:27.828259+08:00", "timestamp": 1750327047.828259}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:05:22.626705", "seconds": 322.626705}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10494852066040039, "result_length": 52}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:57:27.930749+08:00", "timestamp": 1750327047.930749}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:05:36.047576", "seconds": 336.047576}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:57:41.351620+08:00", "timestamp": 1750327061.35162}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:05:36.150073", "seconds": 336.150073}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.10291624069213867, "result_length": 78}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:57:41.454117+08:00", "timestamp": 1750327061.454117}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:05:40.959387", "seconds": 340.959387}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-n": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:57:46.263431+08:00", "timestamp": 1750327066.263431}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:05:43.028335", "seconds": 343.028335}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 2.0689985752105713, "result_length": 40}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:57:48.332379+08:00", "timestamp": 1750327068.332379}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:06:02.792808", "seconds": 362.792808}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:59:01.162995+08:00", "timestamp": 1750327141.162995}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:06:02.797631", "seconds": 362.797631}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-g": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:59:01.167818+08:00", "timestamp": 1750327141.167818}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:06:02.903404", "seconds": 362.903404}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.11362576484680176, "result_length": 51}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:59:01.273591+08:00", "timestamp": 1750327141.273591}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:06:05.406015", "seconds": 365.406015}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:59:03.776202+08:00", "timestamp": 1750327143.776202}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:06:05.408411", "seconds": 365.408411}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:59:03.778598+08:00", "timestamp": 1750327143.778598}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:06:05.510546", "seconds": 365.510546}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10457038879394531, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:59:03.880733+08:00", "timestamp": 1750327143.880733}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:06:07.554531", "seconds": 367.554531}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-s": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:59:05.924718+08:00", "timestamp": 1750327145.924718}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:06:07.554761", "seconds": 367.554761}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-s": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:59:05.924948+08:00", "timestamp": 1750327145.924948}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:06:07.658147", "seconds": 367.658147}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10364079475402832, "result_length": 67}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18445, "name": "MainProcess"}, "thread": {"id": 140656063858496, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:59:06.028334+08:00", "timestamp": 1750327146.028334}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:07:15.073870", "seconds": 435.07387}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-s": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:59:20.377914+08:00", "timestamp": 1750327160.377914}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:07:15.176401", "seconds": 435.176401}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10261917114257812, "result_length": 67}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:59:20.480445+08:00", "timestamp": 1750327160.480445}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:07:19.614509", "seconds": 439.614509}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:59:24.918553+08:00", "timestamp": 1750327164.918553}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:07:19.717320", "seconds": 439.71732}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.1028594970703125, "result_length": 51}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 18272, "name": "MainProcess"}, "thread": {"id": 140137082185536, "name": "MainThread"}, "time": {"repr": "2025-06-19 17:59:25.021364+08:00", "timestamp": 1750327165.021364}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.065291", "seconds": 0.065291}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 3120, "name": "MainProcess"}, "thread": {"id": 140176416405312, "name": "MainThread"}, "time": {"repr": "2025-06-19 19:22:54.954207+08:00", "timestamp": 1750332174.954207}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.068127", "seconds": 0.068127}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 70959, "name": "MainProcess"}, "thread": {"id": 140501878765376, "name": "MainThread"}, "time": {"repr": "2025-06-20 01:50:36.715520+08:00", "timestamp": 1750355436.71552}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.050606", "seconds": 0.050606}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 70986, "name": "MainProcess"}, "thread": {"id": 140454936987456, "name": "MainThread"}, "time": {"repr": "2025-06-20 01:50:39.312776+08:00", "timestamp": 1750355439.312776}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.069296", "seconds": 0.069296}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 71374, "name": "MainProcess"}, "thread": {"id": 140379418507072, "name": "MainThread"}, "time": {"repr": "2025-06-20 01:52:47.314043+08:00", "timestamp": 1750355567.314043}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.052980", "seconds": 0.05298}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 71408, "name": "MainProcess"}, "thread": {"id": 139713462306624, "name": "MainThread"}, "time": {"repr": "2025-06-20 01:52:50.532885+08:00", "timestamp": 1750355570.532885}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:35.088019", "seconds": 155.088019}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 71408, "name": "MainProcess"}, "thread": {"id": 139713462306624, "name": "MainThread"}, "time": {"repr": "2025-06-20 01:55:25.567924+08:00", "timestamp": 1750355725.567924}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:02:35.239808", "seconds": 155.239808}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.17048406600952148, "result_length": 68}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 71408, "name": "MainProcess"}, "thread": {"id": 139713462306624, "name": "MainThread"}, "time": {"repr": "2025-06-20 01:55:25.719713+08:00", "timestamp": 1750355725.719713}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:03:12.392901", "seconds": 192.392901}, "exception": null, "extra": {"name": "client.commands", "command": "李list", "input": "/李list -i"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 394, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 71408, "name": "MainProcess"}, "thread": {"id": 139713462306624, "name": "MainThread"}, "time": {"repr": "2025-06-20 01:56:02.872806+08:00", "timestamp": 1750355762.872806}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:18.347612", "seconds": 198.347612}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 71408, "name": "MainProcess"}, "thread": {"id": 139713462306624, "name": "MainThread"}, "time": {"repr": "2025-06-20 01:56:08.827517+08:00", "timestamp": 1750355768.827517}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:18.448317", "seconds": 198.448317}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10073518753051758, "result_length": 68}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 71408, "name": "MainProcess"}, "thread": {"id": 139713462306624, "name": "MainThread"}, "time": {"repr": "2025-06-20 01:56:08.928222+08:00", "timestamp": 1750355768.928222}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.070538", "seconds": 0.070538}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 72387, "name": "MainProcess"}, "thread": {"id": 140226667939648, "name": "MainThread"}, "time": {"repr": "2025-06-20 01:58:14.613293+08:00", "timestamp": 1750355894.613293}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.073098", "seconds": 0.073098}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 73031, "name": "MainProcess"}, "thread": {"id": 140166730868544, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:01:14.004933+08:00", "timestamp": 1750356074.004933}}}
{"text": "连接服务器失败\n", "record": {"elapsed": {"repr": "0:00:03.193869", "seconds": 3.193869}, "exception": null, "extra": {"name": "client.core.network", "host": "47.116.210.212", "port": 8888, "error": "[Errno 113] No route to host"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "connect", "level": {"icon": "❌", "name": "ERROR", "no": 40}, "line": 57, "message": "连接服务器失败", "module": "client", "name": "client.core.client", "process": {"id": 73031, "name": "MainProcess"}, "thread": {"id": 140166730868544, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:01:17.125704+08:00", "timestamp": 1750356077.125704}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.073362", "seconds": 0.073362}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147904427840, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:04:35.984977+08:00", "timestamp": 1750356275.984977}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:09.293807", "seconds": 9.293807}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147904427840, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:04:45.205422+08:00", "timestamp": 1750356285.205422}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:00:09.294187", "seconds": 9.294187}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147904427840, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:04:45.205802+08:00", "timestamp": 1750356285.205802}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:09.394745", "seconds": 9.394745}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.1010122299194336, "result_length": 68}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147904427840, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:04:45.306360+08:00", "timestamp": 1750356285.30636}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.052744", "seconds": 0.052744}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:05:02.986822+08:00", "timestamp": 1750356302.986822}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.058918", "seconds": 0.058918}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:05:22.822424+08:00", "timestamp": 1750356322.822424}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:00:07.465095", "seconds": 7.465095}, "exception": null, "extra": {"name": "client.commands", "command": "sigin", "input": "/sigin"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 394, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:05:30.228601+08:00", "timestamp": 1750356330.228601}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:21.594876", "seconds": 81.594876}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "args": ["testg0", "Admin", "test0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:06:24.528954+08:00", "timestamp": 1750356384.528954}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:21.698125", "seconds": 81.698125}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "duration": 0.10342144966125488, "result_length": 37}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:06:24.632203+08:00", "timestamp": 1750356384.632203}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:18.870733", "seconds": 78.870733}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["testg0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:06:41.634239+08:00", "timestamp": 1750356401.634239}}}
{"text": "用户操作: test1(2) - command_join_chat\n", "record": {"elapsed": {"repr": "0:01:18.871350", "seconds": 78.87135}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_join_chat", "command_args": ["testg0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_join_chat", "module": "logger", "name": "shared.logger", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:06:41.634856+08:00", "timestamp": 1750356401.634856}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:18.971837", "seconds": 78.971837}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.10121846199035645, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:06:41.735343+08:00", "timestamp": 1750356401.735343}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:34.589831", "seconds": 94.589831}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["testg0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:06:57.353337+08:00", "timestamp": 1750356417.353337}}}
{"text": "用户操作: test1(2) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:01:34.590156", "seconds": 94.590156}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_enter_chat", "command_args": ["testg0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:06:57.353662+08:00", "timestamp": 1750356417.353662}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:34.690641", "seconds": 94.690641}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10087776184082031, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:06:57.454147+08:00", "timestamp": 1750356417.454147}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:38.297589", "seconds": 278.297589}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["testg0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147904427840, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:09:14.209204+08:00", "timestamp": 1750356554.209204}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:04:38.329086", "seconds": 278.329086}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["testg0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147904427840, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:09:14.240701+08:00", "timestamp": 1750356554.240701}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:38.444753", "seconds": 278.444753}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.15959811210632324, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147904427840, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:09:14.356368+08:00", "timestamp": 1750356554.356368}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:05:03.220859", "seconds": 303.220859}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["testg0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:10:06.154937+08:00", "timestamp": 1750356606.154937}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:05:03.367291", "seconds": 303.367291}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.16510534286499023, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:10:06.301369+08:00", "timestamp": 1750356606.301369}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:05:38.694274", "seconds": 338.694274}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["testg0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:11:01.457780+08:00", "timestamp": 1750356661.45778}}}
{"text": "用户操作: test1(2) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:05:38.721627", "seconds": 338.721627}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_enter_chat", "command_args": ["testg0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:11:01.485133+08:00", "timestamp": 1750356661.485133}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:05:38.835360", "seconds": 338.83536}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.14960765838623047, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:11:01.598866+08:00", "timestamp": 1750356661.598866}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:08:31.002993", "seconds": 511.002993}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "args": ["/home/student/Code/CN/Chat-Room/README.md"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:13:33.937071+08:00", "timestamp": 1750356813.937071}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:08:31.359481", "seconds": 511.359481}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "duration": 0.37435126304626465, "result_length": 21}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:13:34.293559+08:00", "timestamp": 1750356814.293559}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:08:32.883925", "seconds": 512.883925}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-f": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:13:55.647431+08:00", "timestamp": 1750356835.647431}}}
{"text": "用户操作: test1(2) - command_list\n", "record": {"elapsed": {"repr": "0:08:32.895904", "seconds": 512.895904}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_list", "command_args": [], "command_options": {"-f": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:13:55.659410+08:00", "timestamp": 1750356835.65941}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:08:33.008639", "seconds": 513.008639}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.12991714477539062, "result_length": 51}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:13:55.772145+08:00", "timestamp": 1750356835.772145}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:10:11.737606", "seconds": 611.737606}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:15:34.501112+08:00", "timestamp": 1750356934.501112}}}
{"text": "用户操作: test1(2) - command_recv_files\n", "record": {"elapsed": {"repr": "0:10:11.745205", "seconds": 611.745205}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_recv_files", "command_args": [], "command_options": {"-l": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:15:34.508711+08:00", "timestamp": 1750356934.508711}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:10:11.846990", "seconds": 611.84699}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.11267852783203125, "result_length": 77}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:15:34.610496+08:00", "timestamp": 1750356934.610496}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:10:20.004991", "seconds": 620.004991}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-n": "1"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:15:42.768497+08:00", "timestamp": 1750356942.768497}}}
{"text": "用户操作: test1(2) - command_recv_files\n", "record": {"elapsed": {"repr": "0:10:20.006159", "seconds": 620.006159}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_recv_files", "command_args": [], "command_options": {"-n": "1"}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:15:42.769665+08:00", "timestamp": 1750356942.769665}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:10:22.008962", "seconds": 622.008962}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 2.0061380863189697, "result_length": 40}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683606800192, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:15:44.772468+08:00", "timestamp": 1750356944.772468}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:16:15.001148", "seconds": 975.001148}, "exception": null, "extra": {"name": "client.commands", "command": "add", "args": ["passowrd123"], "options": {"-u": "testuser"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:21:17.935226+08:00", "timestamp": 1750357277.935226}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:16:42.122883", "seconds": 1002.122883}, "exception": null, "extra": {"name": "client.core.admin", "operation": "add_-u", "message": "用户 testuser (ID: 3) 已创建成功"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147749263040, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:21:18.034498+08:00", "timestamp": 1750357278.034498}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:15:55.271018", "seconds": 955.271018}, "exception": null, "extra": {"name": "client.core.admin", "operation": "add_-u", "message": "用户 testuser (ID: 3) 已创建成功"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683208099520, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:21:18.034524+08:00", "timestamp": 1750357278.034524}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:16:15.146693", "seconds": 975.146693}, "exception": null, "extra": {"name": "client.commands", "command": "add", "duration": 0.15646982192993164, "result_length": 25}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:21:18.080771+08:00", "timestamp": 1750357278.080771}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:16:31.343310", "seconds": 991.34331}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "args": ["username", "newname"], "options": {"-u": "3"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:21:34.277388+08:00", "timestamp": 1750357294.277388}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:16:58.419268", "seconds": 1018.419268}, "exception": null, "extra": {"name": "client.core.admin", "operation": "modify_-u", "message": "用户 testuser 的用户名已修改为 newname"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147749263040, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:21:34.330883+08:00", "timestamp": 1750357294.330883}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:16:11.568609", "seconds": 971.568609}, "exception": null, "extra": {"name": "client.core.admin", "operation": "modify_-u", "message": "用户 testuser 的用户名已修改为 newname"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683208099520, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:21:34.332115+08:00", "timestamp": 1750357294.332115}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:16:31.446066", "seconds": 991.446066}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "duration": 0.10317111015319824, "result_length": 28}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:21:34.380144+08:00", "timestamp": 1750357294.380144}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.069421", "seconds": 0.069421}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666550019904, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:22:00.608361+08:00", "timestamp": 1750357320.608361}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:17:54.465745", "seconds": 1074.465745}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147904427840, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:22:30.377360+08:00", "timestamp": 1750357350.37736}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:17:54.468000", "seconds": 1074.468}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-u": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147904427840, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:22:30.379615+08:00", "timestamp": 1750357350.379615}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:17:54.573408", "seconds": 1074.573408}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.11186742782592773, "result_length": 112}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147904427840, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:22:30.485023+08:00", "timestamp": 1750357350.485023}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:23.398807", "seconds": 83.398807}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["testg0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666550019904, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:23:23.937747+08:00", "timestamp": 1750357403.937747}}}
{"text": "用户操作: newname(3) - command_join_chat\n", "record": {"elapsed": {"repr": "0:01:23.399087", "seconds": 83.399087}, "exception": null, "extra": {"user_id": 3, "username": "newname", "action": "command_join_chat", "command_args": ["testg0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: newname(3) - command_join_chat", "module": "logger", "name": "shared.logger", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666550019904, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:23:23.938027+08:00", "timestamp": 1750357403.938027}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:23.499498", "seconds": 83.499498}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.10074234008789062, "result_length": 16}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666550019904, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:23:24.038438+08:00", "timestamp": 1750357404.038438}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:29.913367", "seconds": 89.913367}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["testg0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666550019904, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:23:30.452307+08:00", "timestamp": 1750357410.452307}}}
{"text": "用户操作: newname(3) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:01:29.913692", "seconds": 89.913692}, "exception": null, "extra": {"user_id": 3, "username": "newname", "action": "command_enter_chat", "command_args": ["testg0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: newname(3) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666550019904, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:23:30.452632+08:00", "timestamp": 1750357410.452632}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:30.014145", "seconds": 90.014145}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.1008296012878418, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666550019904, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:23:30.553085+08:00", "timestamp": 1750357410.553085}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:18:48.876740", "seconds": 1128.87674}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-u": "3"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:23:51.810818+08:00", "timestamp": 1750357431.810818}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:01:52.490637", "seconds": 112.490637}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 newname (ID: 3) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666151630528, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:23:53.029577+08:00", "timestamp": 1750357433.029577}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:19:17.117976", "seconds": 1157.117976}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 newname (ID: 3) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147749263040, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:23:53.029591+08:00", "timestamp": 1750357433.029591}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:18:30.269532", "seconds": 1110.269532}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-u", "message": "用户 newname (ID: 3) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683208099520, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:23:53.033038+08:00", "timestamp": 1750357433.033038}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:18:50.142012", "seconds": 1130.142012}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.2653186321258545, "result_length": 23}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:23:53.076090+08:00", "timestamp": 1750357433.07609}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:19:04.817860", "seconds": 1144.81786}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-u": "3"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:24:07.751938+08:00", "timestamp": 1750357447.751938}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:02:07.270104", "seconds": 127.270104}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 newname (ID: 3) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666151630528, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:24:07.809044+08:00", "timestamp": 1750357447.809044}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:19:31.897431", "seconds": 1171.897431}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 newname (ID: 3) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147749263040, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:24:07.809046+08:00", "timestamp": 1750357447.809046}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:18:45.045563", "seconds": 1125.045563}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-u", "message": "用户 newname (ID: 3) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683208099520, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:24:07.809069+08:00", "timestamp": 1750357447.809069}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:19:04.919684", "seconds": 1144.919684}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10432910919189453, "result_length": 24}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:24:07.853762+08:00", "timestamp": 1750357447.853762}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:20.019684", "seconds": 260.019684}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-c": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666550019904, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:26:20.558624+08:00", "timestamp": 1750357580.558624}}}
{"text": "用户操作: newname(3) - command_list\n", "record": {"elapsed": {"repr": "0:04:20.054330", "seconds": 260.05433}, "exception": null, "extra": {"user_id": 3, "username": "newname", "action": "command_list", "command_args": [], "command_options": {"-c": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: newname(3) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666550019904, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:26:20.593270+08:00", "timestamp": 1750357580.59327}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:20.167536", "seconds": 260.167536}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.16553616523742676, "result_length": 62}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666550019904, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:26:20.706476+08:00", "timestamp": 1750357580.706476}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:22:34.321047", "seconds": 1354.321047}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "args": ["name", "newtestg"], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:27:37.255125+08:00", "timestamp": 1750357657.255125}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:05:36.803326", "seconds": 336.803326}, "exception": null, "extra": {"name": "client.core.admin", "operation": "modify_-g", "message": "群组 testg0 的名称已修改为 newtestg"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666151630528, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:27:37.342266+08:00", "timestamp": 1750357657.342266}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:22:34.453732", "seconds": 1354.453732}, "exception": null, "extra": {"name": "client.commands", "command": "modify", "duration": 0.1471107006072998, "result_length": 26}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:27:37.387810+08:00", "timestamp": 1750357657.38781}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:22:14.600069", "seconds": 1334.600069}, "exception": null, "extra": {"name": "client.core.admin", "operation": "modify_-g", "message": "群组 testg0 的名称已修改为 newtestg"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683208099520, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:27:37.363575+08:00", "timestamp": 1750357657.363575}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:23:01.457541", "seconds": 1381.457541}, "exception": null, "extra": {"name": "client.core.admin", "operation": "modify_-g", "message": "群组 testg0 的名称已修改为 newtestg"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147749263040, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:27:37.369156+08:00", "timestamp": 1750357657.369156}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:22:43.510750", "seconds": 1363.51075}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:27:46.444828+08:00", "timestamp": 1750357666.444828}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:22:25.045391", "seconds": 1345.045391}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 newtestg (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683208099520, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:27:47.808897+08:00", "timestamp": 1750357667.808897}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:05:47.270902", "seconds": 347.270902}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 newtestg (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666151630528, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:27:47.809842+08:00", "timestamp": 1750357667.809842}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:23:11.900226", "seconds": 1391.900226}, "exception": null, "extra": {"name": "client.core.admin", "operation": "ban_-g", "message": "群组 newtestg (ID: 2) 已被禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147749263040, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:27:47.811841+08:00", "timestamp": 1750357667.811841}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:22:44.922091", "seconds": 1364.922091}, "exception": null, "extra": {"name": "client.commands", "command": "ban", "duration": 1.4121110439300537, "result_length": 24}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:27:47.856169+08:00", "timestamp": 1750357667.856169}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:22:59.257243", "seconds": 1379.257243}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:28:02.191321+08:00", "timestamp": 1750357682.191321}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:22:59.361062", "seconds": 1379.361062}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10390925407409668, "result_length": 38}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:28:02.295140+08:00", "timestamp": 1750357682.29514}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:23:30.951955", "seconds": 1410.951955}, "exception": null, "extra": {"name": "client.commands", "command": "free", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:28:33.886033+08:00", "timestamp": 1750357713.886033}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:06:33.401057", "seconds": 393.401057}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 newtestg (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666151630528, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:28:33.939997+08:00", "timestamp": 1750357713.939997}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:23:11.179379", "seconds": 1391.179379}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 newtestg (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683208099520, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:28:33.942885+08:00", "timestamp": 1750357713.942885}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:23:58.029725", "seconds": 1438.029725}, "exception": null, "extra": {"name": "client.core.admin", "operation": "free_-g", "message": "群组 newtestg (ID: 2) 已解除禁言"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147749263040, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:28:33.941340+08:00", "timestamp": 1750357713.94134}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:23:31.053838", "seconds": 1411.053838}, "exception": null, "extra": {"name": "client.commands", "command": "free", "duration": 0.10199308395385742, "result_length": 25}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:28:33.987916+08:00", "timestamp": 1750357713.987916}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:23:51.087924", "seconds": 1431.087924}, "exception": null, "extra": {"name": "client.commands", "command": "del", "args": [], "options": {"-g": "2"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:28:54.022002+08:00", "timestamp": 1750357734.022002}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:23:32.563116", "seconds": 1412.563116}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-g", "message": "群组 newtestg (ID: 2) 已被删除"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73858, "name": "MainProcess"}, "thread": {"id": 139683208099520, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:28:55.326622+08:00", "timestamp": 1750357735.326622}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:06:54.787765", "seconds": 414.787765}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-g", "message": "群组 newtestg (ID: 2) 已被删除"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666151630528, "name": "Thread-1 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:28:55.326705+08:00", "timestamp": 1750357735.326705}}}
{"text": "收到管理员操作通知\n", "record": {"elapsed": {"repr": "0:24:19.414458", "seconds": 1459.414458}, "exception": null, "extra": {"name": "client.core.admin", "operation": "del_-g", "message": "群组 newtestg (ID: 2) 已被删除"}, "file": {"name": "client.py", "path": "/home/student/Code/CN/Chat-Room/client/core/client.py"}, "function": "_handle_admin_operation_notification", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 1228, "message": "收到管理员操作通知", "module": "client", "name": "client.core.client", "process": {"id": 73644, "name": "MainProcess"}, "thread": {"id": 140147749263040, "name": "Thread-3 (_receive_messages)"}, "time": {"repr": "2025-06-20 02:28:55.326073+08:00", "timestamp": 1750357735.326073}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:23:52.481184", "seconds": 1432.481184}, "exception": null, "extra": {"name": "client.commands", "command": "del", "duration": 1.3956260681152344, "result_length": 24}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 73763, "name": "MainProcess"}, "thread": {"id": 140681076676416, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:28:55.415262+08:00", "timestamp": 1750357735.415262}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:07:19.384645", "seconds": 439.384645}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666550019904, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:29:19.923585+08:00", "timestamp": 1750357759.923585}}}
{"text": "用户操作: newname(3) - command_list\n", "record": {"elapsed": {"repr": "0:07:19.387169", "seconds": 439.387169}, "exception": null, "extra": {"user_id": 3, "username": "newname", "action": "command_list", "command_args": [], "command_options": {"-g": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: newname(3) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666550019904, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:29:19.926109+08:00", "timestamp": 1750357759.926109}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:07:19.492477", "seconds": 439.492477}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.11201214790344238, "result_length": 29}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 77114, "name": "MainProcess"}, "thread": {"id": 140666550019904, "name": "MainThread"}, "time": {"repr": "2025-06-20 02:29:20.031417+08:00", "timestamp": 1750357760.031417}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.115351", "seconds": 0.115351}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 2591, "name": "MainProcess"}, "thread": {"id": 140113893975872, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:32:42.544865+08:00", "timestamp": 1750404762.544865}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.104284", "seconds": 0.104284}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 2970, "name": "MainProcess"}, "thread": {"id": 139945228564288, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:33:31.249213+08:00", "timestamp": 1750404811.249213}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:12.026949", "seconds": 72.026949}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 2591, "name": "MainProcess"}, "thread": {"id": 140113893975872, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:33:54.456463+08:00", "timestamp": 1750404834.456463}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:01:12.128069", "seconds": 72.128069}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10129237174987793, "result_length": 89}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 2591, "name": "MainProcess"}, "thread": {"id": 140113893975872, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:33:54.557583+08:00", "timestamp": 1750404834.557583}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:09.544805", "seconds": 129.544805}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "args": ["testg1", "test1", "test2", "test5"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 2970, "name": "MainProcess"}, "thread": {"id": 139945228564288, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:35:40.689734+08:00", "timestamp": 1750404940.689734}}}
{"text": "用户操作: test5(3) - command_create_chat\n", "record": {"elapsed": {"repr": "0:02:09.545365", "seconds": 129.545365}, "exception": null, "extra": {"user_id": 3, "username": "test5", "action": "command_create_chat", "command_args": ["testg1", "test1", "test2", "test5"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test5(3) - command_create_chat", "module": "logger", "name": "shared.logger", "process": {"id": 2970, "name": "MainProcess"}, "thread": {"id": 139945228564288, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:35:40.690294+08:00", "timestamp": 1750404940.690294}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:02:09.645950", "seconds": 129.64595}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "duration": 0.1012570858001709, "error": "用户 'test2' 不存在"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 2970, "name": "MainProcess"}, "thread": {"id": 139945228564288, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:35:40.790879+08:00", "timestamp": 1750404940.790879}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:02:20.524566", "seconds": 140.524566}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "args": ["test0", "test1", "test6"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 2970, "name": "MainProcess"}, "thread": {"id": 139945228564288, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:35:51.669495+08:00", "timestamp": 1750404951.669495}}}
{"text": "用户操作: test5(3) - command_create_chat\n", "record": {"elapsed": {"repr": "0:02:20.524878", "seconds": 140.524878}, "exception": null, "extra": {"user_id": 3, "username": "test5", "action": "command_create_chat", "command_args": ["test0", "test1", "test6"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test5(3) - command_create_chat", "module": "logger", "name": "shared.logger", "process": {"id": 2970, "name": "MainProcess"}, "thread": {"id": 139945228564288, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:35:51.669807+08:00", "timestamp": 1750404951.669807}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:02:20.625398", "seconds": 140.625398}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "duration": 0.10087466239929199, "error": "用户 'test6' 不存在"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 2970, "name": "MainProcess"}, "thread": {"id": 139945228564288, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:35:51.770327+08:00", "timestamp": 1750404951.770327}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:26.928832", "seconds": 206.928832}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 2591, "name": "MainProcess"}, "thread": {"id": 140113893975872, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:36:09.358346+08:00", "timestamp": 1750404969.358346}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:27.030061", "seconds": 207.030061}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10135889053344727, "result_length": 110}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 2591, "name": "MainProcess"}, "thread": {"id": 140113893975872, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:36:09.459575+08:00", "timestamp": 1750404969.459575}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:43.926951", "seconds": 223.926951}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-u": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 2591, "name": "MainProcess"}, "thread": {"id": 140113893975872, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:36:26.356465+08:00", "timestamp": 1750404986.356465}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:44.027534", "seconds": 224.027534}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10063600540161133, "result_length": 110}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 2591, "name": "MainProcess"}, "thread": {"id": 140113893975872, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:36:26.457048+08:00", "timestamp": 1750404986.457048}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.118492", "seconds": 0.118492}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:36:41.759326+08:00", "timestamp": 1750405001.759326}}}
{"text": "日志系统初始化完成\n", "record": {"elapsed": {"repr": "0:00:00.091176", "seconds": 0.091176}, "exception": null, "extra": {"component": "client"}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "initialize", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 141, "message": "日志系统初始化完成", "module": "logger", "name": "shared.logger", "process": {"id": 3964, "name": "MainProcess"}, "thread": {"id": 139990236477248, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:37:01.371658+08:00", "timestamp": 1750405021.371658}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:37.420205", "seconds": 37.420205}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "args": ["test0", "test1"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:37:19.061039+08:00", "timestamp": 1750405039.061039}}}
{"text": "用户操作: test0(1) - command_create_chat\n", "record": {"elapsed": {"repr": "0:00:37.420711", "seconds": 37.420711}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_create_chat", "command_args": ["test0", "test1"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_create_chat", "module": "logger", "name": "shared.logger", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:37:19.061545+08:00", "timestamp": 1750405039.061545}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:37.521451", "seconds": 37.521451}, "exception": null, "extra": {"name": "client.commands", "command": "create_chat", "duration": 0.10138392448425293, "result_length": 29}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:37:19.162285+08:00", "timestamp": 1750405039.162285}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:00:45.374434", "seconds": 45.374434}, "exception": null, "extra": {"name": "client.commands", "command": "list", "args": [], "options": {"-g": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:37:27.015268+08:00", "timestamp": 1750405047.015268}}}
{"text": "用户操作: test0(1) - command_list\n", "record": {"elapsed": {"repr": "0:00:45.374781", "seconds": 45.374781}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_list", "command_args": [], "command_options": {"-g": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_list", "module": "logger", "name": "shared.logger", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:37:27.015615+08:00", "timestamp": 1750405047.015615}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:00:45.475604", "seconds": 45.475604}, "exception": null, "extra": {"name": "client.commands", "command": "list", "duration": 0.10123562812805176, "result_length": 73}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:37:27.116438+08:00", "timestamp": 1750405047.116438}}}
{"text": "未知命令\n", "record": {"elapsed": {"repr": "0:01:00.932367", "seconds": 60.932367}, "exception": null, "extra": {"name": "client.commands", "command": "jonin_chat", "input": "/jonin_chat 3"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 394, "message": "未知命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:37:42.573201+08:00", "timestamp": 1750405062.573201}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:01:06.014889", "seconds": 66.014889}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["3"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:37:47.655723+08:00", "timestamp": 1750405067.655723}}}
{"text": "用户操作: test0(1) - command_join_chat\n", "record": {"elapsed": {"repr": "0:01:06.015433", "seconds": 66.015433}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_join_chat", "command_args": ["3"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_join_chat", "module": "logger", "name": "shared.logger", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:37:47.656267+08:00", "timestamp": 1750405067.656267}}}
{"text": "命令执行失败\n", "record": {"elapsed": {"repr": "0:01:06.116362", "seconds": 66.116362}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.10157585144042969, "error": "聊天组 '3' 不存在"}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "⚠️", "name": "WARNING", "no": 30}, "line": 424, "message": "命令执行失败", "module": "parser", "name": "client.commands.parser", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:37:47.757196+08:00", "timestamp": 1750405067.757196}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:33.833151", "seconds": 213.833151}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["test0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:15.473985+08:00", "timestamp": 1750405215.473985}}}
{"text": "用户操作: test0(1) - command_join_chat\n", "record": {"elapsed": {"repr": "0:03:33.833857", "seconds": 213.833857}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_join_chat", "command_args": ["test0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_join_chat", "module": "logger", "name": "shared.logger", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:15.474691+08:00", "timestamp": 1750405215.474691}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:33.934708", "seconds": 213.934708}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.10173177719116211, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:15.575542+08:00", "timestamp": 1750405215.575542}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:38.969388", "seconds": 218.969388}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:20.610222+08:00", "timestamp": 1750405220.610222}}}
{"text": "用户操作: test0(1) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:03:38.969943", "seconds": 218.969943}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_enter_chat", "command_args": ["test0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:20.610777+08:00", "timestamp": 1750405220.610777}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:39.070971", "seconds": 219.070971}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.10165953636169434, "result_length": 14}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:20.711805+08:00", "timestamp": 1750405220.711805}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:58.204996", "seconds": 238.204996}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "args": ["/home/student/Code/CN/Chat-Room/requirements.txt"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:39.845830+08:00", "timestamp": 1750405239.84583}}}
{"text": "用户操作: test0(1) - command_send_files\n", "record": {"elapsed": {"repr": "0:03:58.205489", "seconds": 238.205489}, "exception": null, "extra": {"user_id": 1, "username": "test0", "action": "command_send_files", "command_args": ["/home/student/Code/CN/Chat-Room/requirements.txt"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test0(1) - command_send_files", "module": "logger", "name": "shared.logger", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:39.846323+08:00", "timestamp": 1750405239.846323}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:58.407911", "seconds": 238.407911}, "exception": null, "extra": {"name": "client.commands", "command": "send_files", "duration": 0.2031099796295166, "result_length": 28}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 3703, "name": "MainProcess"}, "thread": {"id": 139688292394816, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:40.048745+08:00", "timestamp": 1750405240.048745}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:52.779015", "seconds": 232.779015}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "args": ["test0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 3964, "name": "MainProcess"}, "thread": {"id": 139990236477248, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:54.059497+08:00", "timestamp": 1750405254.059497}}}
{"text": "用户操作: test1(2) - command_join_chat\n", "record": {"elapsed": {"repr": "0:03:52.779988", "seconds": 232.779988}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_join_chat", "command_args": ["test0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_join_chat", "module": "logger", "name": "shared.logger", "process": {"id": 3964, "name": "MainProcess"}, "thread": {"id": 139990236477248, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:54.060470+08:00", "timestamp": 1750405254.06047}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:52.880804", "seconds": 232.880804}, "exception": null, "extra": {"name": "client.commands", "command": "join_chat", "duration": 0.10209417343139648, "result_length": 15}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 3964, "name": "MainProcess"}, "thread": {"id": 139990236477248, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:54.161286+08:00", "timestamp": 1750405254.161286}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:03:56.731052", "seconds": 236.731052}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "args": ["test0"], "options": {}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 3964, "name": "MainProcess"}, "thread": {"id": 139990236477248, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:58.011534+08:00", "timestamp": 1750405258.011534}}}
{"text": "用户操作: test1(2) - command_enter_chat\n", "record": {"elapsed": {"repr": "0:03:56.731615", "seconds": 236.731615}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_enter_chat", "command_args": ["test0"], "command_options": {}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_enter_chat", "module": "logger", "name": "shared.logger", "process": {"id": 3964, "name": "MainProcess"}, "thread": {"id": 139990236477248, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:58.012097+08:00", "timestamp": 1750405258.012097}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:03:56.832801", "seconds": 236.832801}, "exception": null, "extra": {"name": "client.commands", "command": "enter_chat", "duration": 0.1018381118774414, "result_length": 14}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 3964, "name": "MainProcess"}, "thread": {"id": 139990236477248, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:40:58.113283+08:00", "timestamp": 1750405258.113283}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:02.543018", "seconds": 242.543018}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-l": true}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 3964, "name": "MainProcess"}, "thread": {"id": 139990236477248, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:41:03.823500+08:00", "timestamp": 1750405263.8235}}}
{"text": "用户操作: test1(2) - command_recv_files\n", "record": {"elapsed": {"repr": "0:04:02.543619", "seconds": 242.543619}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_recv_files", "command_args": [], "command_options": {"-l": true}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 3964, "name": "MainProcess"}, "thread": {"id": 139990236477248, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:41:03.824101+08:00", "timestamp": 1750405263.824101}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:02.644450", "seconds": 242.64445}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 0.10157370567321777, "result_length": 83}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 3964, "name": "MainProcess"}, "thread": {"id": 139990236477248, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:41:03.924932+08:00", "timestamp": 1750405263.924932}}}
{"text": "执行命令\n", "record": {"elapsed": {"repr": "0:04:15.654314", "seconds": 255.654314}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "args": [], "options": {"-n": "5"}}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 399, "message": "执行命令", "module": "parser", "name": "client.commands.parser", "process": {"id": 3964, "name": "MainProcess"}, "thread": {"id": 139990236477248, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:41:16.934796+08:00", "timestamp": 1750405276.934796}}}
{"text": "用户操作: test1(2) - command_recv_files\n", "record": {"elapsed": {"repr": "0:04:15.654949", "seconds": 255.654949}, "exception": null, "extra": {"user_id": 2, "username": "test1", "action": "command_recv_files", "command_args": [], "command_options": {"-n": "5"}}, "file": {"name": "logger.py", "path": "/home/student/Code/CN/Chat-Room/shared/logger.py"}, "function": "log_user_action", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 268, "message": "用户操作: test1(2) - command_recv_files", "module": "logger", "name": "shared.logger", "process": {"id": 3964, "name": "MainProcess"}, "thread": {"id": 139990236477248, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:41:16.935431+08:00", "timestamp": 1750405276.935431}}}
{"text": "命令执行成功\n", "record": {"elapsed": {"repr": "0:04:17.861509", "seconds": 257.861509}, "exception": null, "extra": {"name": "client.commands", "command": "recv_files", "duration": 2.207313060760498, "result_length": 47}, "file": {"name": "parser.py", "path": "/home/student/Code/CN/Chat-Room/client/commands/parser.py"}, "function": "handle_command", "level": {"icon": "ℹ️", "name": "INFO", "no": 20}, "line": 422, "message": "命令执行成功", "module": "parser", "name": "client.commands.parser", "process": {"id": 3964, "name": "MainProcess"}, "thread": {"id": 139990236477248, "name": "MainThread"}, "time": {"repr": "2025-06-20 15:41:19.141991+08:00", "timestamp": 1750405279.141991}}}
