现在一般日志的系统粗略分为 debug 、info 、warning 、error 几个等级,分别提供详细日志、必要信息、警告和错误信息。
但是我个人开发体验上感觉 debug 这一个等级不太够用,我觉得应该新增一个 develop 等级。因为我在开发阶段有一个阶段是要寻求了解整个应用在所有必要和非必要节点上的运作细节,这比 debug 级别的需求涵盖更加广,因为后者更着重于分析和监控程序是否工作正常,而不注重运行细节,但开发人员在开发过程中需要大量调试,程序本身也没被确定下来,自然需要更多信息反复尝试。
现在遇到一个问题是,一般在应用部署初期,也不是直接调到 info 级别日志运行的,而是仍然习惯用 debug 日志跑一段时间,观察是否运行正常。但是如果在开发过程中大量使用 debug 打点的话,信息有点过于多了,不多打点的话开发体验又相当于默写,掌控感很差。
![]() | 1 Finest 2024-02-15 13:21:23 +08:00 via Android 还有个 trace 的等级吧 |
2 drymonfidelia 2024-02-15 13:26:48 +08:00 开发直接下断点足够了 这些全打印出来一分钟几 GB 的日志没法看 |
![]() | 3 orzorzorzorz 2024-02-15 13:39:40 +08:00 我等了一年多,都没等出来 chatgpt 来帮我看日志的插件。我真的不想看日志,我只想 ide 直接告诉我错在哪,顺带帮我改了,还帮我圈人 review ,自动填入日报,生成月报 ppt ,丰富晨会文案,最后还能帮我争取 N+1 的赔偿。 话说回来,日志我要么全都慢慢翻生怕错过什么,要么是一点都不看。分个级感觉有点尴尬啊。 |
![]() | 4 BeautifulSoap 2024-02-15 13:40:51 +08:00 via Android 啥,实际开发中日志不是只有 dev ,info ,err 三个等级吗(狗头 |
![]() | 5 BeautifulSoap 2024-02-15 13:41:43 +08:00 via Android @BeautifulSoap 打错了,是只有 debug ,info ,err 三个等级 |
![]() | 6 lzgshsj 2024-02-15 13:42:10 +08:00 debug 往下还有 trace 呀 |
![]() | 7 rb6221 2024-02-15 15:00:41 +08:00 不是有个 logv 吗 |
![]() | 8 adoal 2024-02-15 16:10:07 +08:00 可以往上加,也可以往下加。你认为 debug 不够细,然而在有的日志 level 体系里(比如 syslog ),debug 是最细的,你说的用 debug 来打的这些级别是放在“后者更着重于分析和监控程序是否工作正常,而不注重运行细节”是放在 notice 里的。 |
![]() | 9 adoal 2024-02-15 16:10:36 +08:00 LOG_EMERG system is unusable LOG_ALERT action must be taken immediately LOG_CRIT critical conditions LOG_ERR error conditions LOG_WARNING warning conditions LOG_NOTICE normal, but significant, condition LOG_INFO informational message LOG_DEBUG debug-level message |
10 xiyy02 2024-02-15 16:18:49 +08:00 Slf4j 规范里有 ERROR 、WARN 、INFO 、DEBUG 、TRACE 五个等级,TRACE 应该满足你的需求(但大多数的日志实现层,如 logback 貌似不展示 TRACE 级别,需要单独设置才行) |
![]() | 11 weijancc 2024-02-15 23:20:56 +08:00 实际环境 debug 日志一开都多得看不清楚了 |
12 kneo 2024-02-16 05:56:33 +08:00 via Android 你这目的,就是用 debug 即可。你非要说不行,那 info 还能分个三六九等呢。 |