mirror of
https://github.com/suyiiyii/nonebot-bison.git
synced 2025-06-04 02:26:11 +08:00
filter useless log of apscheduler
This commit is contained in:
parent
293d62c03a
commit
b1818a03db
@ -1,3 +1,4 @@
|
||||
import asyncio
|
||||
import logging
|
||||
|
||||
from apscheduler.schedulers.asyncio import AsyncIOScheduler
|
||||
@ -53,17 +54,17 @@ for platform_name, platform in platform_manager.items():
|
||||
fetch_and_send, platform.schedule_type, **platform.schedule_kw,
|
||||
args=(platform_name,))
|
||||
|
||||
class CustomLogHandler(LoguruHandler):
|
||||
|
||||
def filter(self, record: logging.LogRecord):
|
||||
return record.msg != ('Execution of job "%s" '
|
||||
'skipped: maximum number of running instances reached (%d)')
|
||||
|
||||
|
||||
if plugin_config.bison_use_queue:
|
||||
scheduler.add_job(do_send_msgs, 'interval', seconds=0.3, coalesce=True)
|
||||
|
||||
class SchedulerLogFilter(logging.Filter):
|
||||
|
||||
def filter(self, record: logging.LogRecord) -> bool:
|
||||
logger.debug("logRecord", record, record.getMessage())
|
||||
return not (record.name == "apscheduler" and 'skipped: maximum number of running instances reached' in record.getMessage())
|
||||
|
||||
aps_logger = logging.getLogger("apscheduler")
|
||||
aps_logger.setLevel(30)
|
||||
aps_logger.addFilter(SchedulerLogFilter())
|
||||
aps_logger.handlers.clear()
|
||||
aps_logger.addHandler(LoguruHandler())
|
||||
aps_logger.addHandler(CustomLogHandler())
|
||||
|
@ -174,4 +174,8 @@ if plugin_config.bison_filter_log:
|
||||
diagnose=False,
|
||||
filter=default_filter,
|
||||
format=default_format)
|
||||
config = nonebot.get_driver().config
|
||||
logger.success("Muted info & success from nonebot")
|
||||
default_filter.level = (
|
||||
"DEBUG" if config.debug else
|
||||
"INFO") if config.log_level is None else config.log_level
|
||||
|
Loading…
x
Reference in New Issue
Block a user