讨论/系统设计/如何设计一个日志输出系统?/
如何设计一个日志输出系统?

日志有两种存储方式,sqlite和txt。

需求是一天一个日志,可设置存储30天日志记录。

数据库单张表追加一条条的记录,每天生成一张新表,超过30张表,删除前边的表。

txt每天一个新的,指定文件夹内超过30个文件,删除前边的。

问题:怎么处理极端情况一天打的日志文件过大造成文件打不开或其他问题?

如果设定单个大小限制,达到阈值后数据库和txt怎么处理?

展开讨论
Aihcn发起于 2020-05-18
共 2 个讨论

首先说txt的问题把,log4j可以满足你的要求,以每天一个log文件,还可以设置文件大小,超过大小自动生成新文件;格式:年-月-日-时-分-秒-[0-N].log 这样子;还可以设置 定期自动删除;

至于数据表;你可以每天建一个表 和 日志方式一样,然后你插入日志时间可以判断下count,超过某个大小,你用 年月日-1这样子,拆下表来解决;

log4c家族不能用吗,循环日志定期删除