日志聚合与全链路监控
注意:在公众号
可以获取更多资料
今天线上查bug,使用上了链路追踪,真的很方便,同一个请求,调用的所有服务的日志,能根据Trace Id筛选出来,效率提高了很多。
所以,项目加链路追踪的决定,是非常正确的选择。
以前,线上环境有问题,为了查询日志,运维工程师登录服务器,下载日志,转发日志文件,研发工程师分析日志文件,这种查询日志模式很繁琐。
随着服务的拆分,日志系统也演变成独立自治的单一模块。为了查询日志,我们可能需要登录不同的服务器去一个个下载日志分析。因此,构建日志聚合平台是必不可少的。事实上,规范整个系统日志体系,采用标准的日志格式非常便于后续的日志聚合检索。
所以在项目拆分后,我们首先做的事情是统一日志格式,日志聚合与全链路监控。实现生产环境,研发人员直接查找日志,定位问题,不需要经过运维;
我们采用ELK进行日志聚合,采用Spring Cloud Sleuth数据埋点,收集服务调用链路上的数据。
其他。。。
1.堆栈异常信息处理
全局业务异常一般不打印堆栈信息,对于不明原因的异常,需要打印堆栈信息。对于堆栈异常,我们整合成了一行日志,可以在elk中查看堆栈异常;
2.elk毫秒级日志错乱问题
对于单用户,单请求,毫秒级日志导致的乱序问题,忽略不计
推荐书籍
《领域驱动设计》复杂业务需要建模,统一概念,适合整个产品,研发。
京东地址:https://u.jd.com/NVm7gK