加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 创业 > C语言 > 正文

日志记录方法

发布时间:2020-12-15 01:19:51 所属栏目:C语言 来源:网络整理
导读:7月30日日常工作学习记录 AIM: troubleshooting show status 怎样记日志方便troubleshooting 对外部的调用封装 对外部系统与模块的依赖调用前后记下日志,方便接口调试 LOG.debug('calling external system' + parameters); LOG.debug('called successfully.

7月30日日常工作学习记录

AIM:

  • troubleshooting

  • show status

怎样记日志方便troubleshooting

  • 对外部的调用封装

    • 对外部系统与模块的依赖调用前后记下日志,方便接口调试

    • LOG.debug('calling external system' + parameters);

    • LOG.debug('called successfully. param is' + param);

    • LOG.warning('failed at calling x system');

  • 状态变化

    • isRunning = true / false;

    • LOG.info('system is running');

    • LOG.info('system was interrupted by ' + );

  • 系统入口与出口

    • 粒度可以是重要方法级or模块级。记录它的输入输出,方便定位。

  • 业务异常

    • 任何业务异常都应该记录下来

  • 非预期执行

    • 为程序在“有可能”执行到的地方打印日志。

    • 虽然最终程序的执行结果相同,但是要考虑到是否是正确的路径让程序执行成功,而不是另外的方式执行的,而致使结果相同

  • 很少出现的else情况之中,打印log

程序运行状态可以记录哪些?

  • 程序运行时间 log.info('execution cost : ' + currentTime - startTime);

  • 大批量数据的执行进度 log.debug('current progress : ' + currentPos/total);

  • 关键变量及正在做哪些重要的事情: 执行关键逻辑,做io操作等

    • log.info('x is ' + x);

    • log.info('calling remote metod :' + params);

应该避免怎样的日志方式

  • 混淆信息的log

    • log应该是清晰准确的

  • 记错位置

  • 记错级别 i.e:混淆代码错误和用户错误

    • 不要记录用户的错误行为

  • 遗漏信息

    • 要有stacktrace

参考:

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读