`

打印日志的tips

阅读更多
这次跟踪减库存和事务处理的问题, 非常麻烦, 主要跟我们的日志打印有关, 可以说日志很不详细, 或者打的不是地方, 不该打日志的地方有log, 该有日志的地方却没有, 导致很难发现问题, 所以以后对于异常情况的一定要打日志, 应该将打日志的重要性提高到写注释的高度, 这样可以提高我们分析问题的效率.

打日志的一般技巧:
1.正常情况下应该返回true, 却返回false的, 反正就是你在对返回值进行检查的时候, 如果不正常, log一下
2.出现异常的地方, 以前认为最外层的服务接口会帮我们记下所有的异常, 但是这个也不一定可靠, 所以还得我们自己记一下
3.日志必须包含上下文信息
4.如果出于统计的需要, 可根据情况打, 但是也要谨慎, 否则会撑爆服务器, 而且必须跟其他的日志信息分开, 最好单独用一个文件.
5.在完成代码之后, 查看一下整个代码结构, 在一些关键的点, 加上日志, 正常的info, 少数情况出现的warn, 异常情况的error或者warn.
6.打印的日志内容要容易查询, 以前我比较倾向于打中文日志, 虽然易读, 但是中文在linux下的搜索统计稍微有些麻烦,所以如果能加上英文标识(比如说用于唯一标识的前缀), 能识别不同日志, 这个对定位也是非常有好处的.
0
0
分享到:
评论
1 楼 mercyblitz 2010-05-31  


一般我的做法是,对日志信息,逻辑和物理上进心分离,同时分级。

对于一般异常信息,设计时可以利用ErrorCode和国际化资源配置(利于查询和组织),搭配一定的日志模式。

对于调试信息的话,建立上下文,可以利用日志监听器,或者更好的AOP,取决于业务模块的API设计。

相关推荐

    java动态日志注入工具anylog.zip

     2、一些项目依赖第三方jar包,如果发生问题,但第三方包中无日志打印,以往可能需要重新编译第  三方包,加上日志,重启服务,然后排查问题。但使用这个工具,就可以直接动态加入日志,而不用  修改第三方jar包...

    swifter-tips.pdf

    这对于实现诸如打印或日志记录等功能非常有用。 #### 初始化方法顺序 在Swift中,初始化方法的顺序是非常重要的,因为它们决定了类的实例如何被构造。`Designated`初始化器是最先被调用的,然后是`Convenience`...

    如何编写批处理文件批处理文件批处理文件

    简明批处理教程22009年10月20日 星期二 下午 05:35 最近对于批处理技术的探讨比较热,也有不少好的批处理程序发布,但是如果没有一定的相关知识恐怕不容易看懂和理解这些批处理文件,也就更谈不上自己动手编写了,古...

    初识python之装饰器

    在这个例子中,`print_tips_func`是一个普通的函数,它接受一个函数`func`作为参数,然后执行该函数并打印提示信息。 装饰器在形式上与函数调用函数类似,但它们的使用方式有所不同。装饰器通常使用`@`语法糖来应用...

    计算机专业必备!电脑技巧5000例

    11. **打印与扫描**:关于打印机的设置和使用,扫描文档的保存格式选择,以及无线打印等现代技术。 12. **云存储与同步**:如何利用云服务(如Google Drive、OneDrive、iCloud)进行文件存储和跨设备同步,以及如何...

    Git常规学习

    - **打印日志** ```bash git log ``` - 显示提交历史,包括提交ID、提交作者、提交日期以及提交信息。 6. **版本回退** - **回退到前一个版本** ```bash git reset --hard HEAD^ ``` - `HEAD`表示当前...

    C语言系统化开发基础精讲

    - **日志记录**:通过在代码中添加日志打印语句来追踪程序运行时的状态。 - **单元测试**:编写测试用例,确保每个模块都能正常工作。 #### 五、C语言的代码风格【Google C CodeStyle CLion配置代码风格】 - **...

    最完整的Toad For Oracle使用手册

    - **Toad Tips**:提供了一些实用的小贴士,帮助用户更高效地使用Toad。 - **Errors**:介绍了常见的错误及其解决方法。 - **RAC Support**:讲述了Toad如何支持Oracle RAC环境。 - **Task Bar & Status Bar**:解释...

    EditPlus 3.31 Build 860 简体中文版

    *“监视日志文件”命令 (“文件”) * -pi 命令行选项指定了不同的工程配置文件 * 字符串插入支持 Perl 语法加亮 * 单词 (文字) 加亮现在支持选择不同的单词 (文字) * 新增“恢复默认值”按钮 (在字体对话框) * 在...

    EditPlus 3.31 Build 1129

    *“监视日志文件”命令 (“文件”) * -pi 命令行选项指定了不同的工程配置文件 * 字符串插入支持 Perl 语法加亮 * 单词 (文字) 加亮现在支持选择不同的单词 (文字) * 新增“恢复默认值”按钮 (在字体对话框) * 在...

    unix power tools 3ed.pdf

    **4.2 vi编辑器技巧 (Chapter 17: vi Tips and Tricks)** - **vi模式**: 命令模式、插入模式等的操作方法。 - **高级编辑**: 复制、粘贴、查找替换等技巧。 - **自动化**: 使用`.vimrc`文件定制vi编辑器。 **4.3 在...

    Linux-101-Hacks

    ### Chapter 3: SSH Commands and Tips #### Hack 28. Debug SSH Client Session 调试SSH客户端会话。 ```bash ssh -vvv user@host ``` #### Hack 29. Toggle SSH Session using SSH Escape Character 使用SSH逃逸...

Global site tag (gtag.js) - Google Analytics