•打印日志原则
•整个团队对打印日志的格式要有明确的规范,团队也根据OP规范进行打印日志
•定义好整个团队记录INFO、DEBUG(或TRACE)日志规范,保证每个开发记录的日志格式统一
•整个团队(包括开发,运维)定期对记录的日志内容进行Review,通过查问题的过程来不断优化日志记录
•绝不打无效的日志,防止无效日志过度淹没重要日志信息
•对系统间Rpc调用一定要log,输入输出必须记录有利于快速定位系统间问题
•业务核心流程服务一定要log,输入输出请记录log,避免出现业务异常无法定位问题
•打印日志中建议不要出现中文,请使用英文,因为很多Linux系统对中文支持不友好
•单条日志内容不能太大,避免打印日志序列化耗掉性能,同时也可避免日志噪音过大
框架会为每个请求响应中生成些助排查信息
如下:
X-Application-Context: ProjectName:ga:ip
X-RequestId: 30794b8d-0937-4608-a006-d2ca255bfdd9
X-ServerInfo: shbx-app021(21.32.2.21)
解释如下:
X-ServerInfo:服务器信息,格式:hostname(Ip)
此作用是快速定位在多台机器中哪台机器。
X-Application-Context:表示当前实例名,格式 contextName
此作用是快速了解机器实例中哪个应用
X-RequestId: 当前请求的唯一表示,请求id
此作用是快速在应用日志文件中定位到请求相关日志