diff --git a/nonebot/log.py b/nonebot/log.py index 4409162b..e4febebc 100644 --- a/nonebot/log.py +++ b/nonebot/log.py @@ -48,6 +48,10 @@ class Filter: self.level: Union[int, str] = "DEBUG" def __call__(self, record): + module = sys.modules.get(record["name"]) + if module: + plugin_name = getattr(module, "__plugin_name__", record["name"]) + record["name"] = plugin_name record["name"] = record["name"].split(".")[0] levelno = logger.level(self.level).no if isinstance(self.level, str) else self.level diff --git a/nonebot/plugin/manager.py b/nonebot/plugin/manager.py index c83a019a..d46f6f6e 100644 --- a/nonebot/plugin/manager.py +++ b/nonebot/plugin/manager.py @@ -215,6 +215,9 @@ class PluginLoader(SourceFileLoader): return # really need? # setattr(module, "__manager__", self.manager) + if self._plugin_token: + setattr(module, "__plugin_name__", + _current_plugin.get(self._plugin_token)) if self._export_token: setattr(module, "__export__", _export.get())