有时我记录大数据,有时我不记录。如果信息很大,我想要对它进行裁剪,但我知道我剪了多少。
我想要这样的东西:
big_data = [1, 2, 3, ... 100]
logger.info(f"Received data: {big_data})测井数据:
11:20 INFO: Received data: [1, 2, 3, ... (another 100 symbols)我可以手动完成,但我希望在记录器设置级别或在info、erro等方法调用级别上有一个标准解决方案。
发布于 2022-10-16 21:20:12
使用自定义格式化程序:
FORMAT = "{time} {level} {message}" # example
MAX_LENGTH = 80 # including information such as time and level
def format_message(record: loguru.Record) -> string:
formatted = FORMAT.format(record)
if len(formatted) > MAX_LENGTH:
formatted = f"{formatted[:MAX_LENGTH]}... (snipped {len(formatted) - MAX_LENGTH} characters)"
return formatted
...
logged.add(..., format=format_message, ...)https://stackoverflow.com/questions/74089862
复制相似问题