ApiBoot 2.1.1.RELEASE版本发布,新增链路式日

作者: 恒宇少年 | 来源:发表于2019-07-17 09:04 被阅读246次

    ApiBoot为接口服务而生,基于SpringBoot完成扩展、自动化配置,通过封装一系列Starter来让调用者快速集成组件,降低学习、使用门槛,提高开发效率。

    ApiBoot 官网

    官网地址:http://apiboot.minbox.io

    ApiBoot 零侵入、链路式请求日志分析框架

    ApiBoot提供单应用、微服务应用下的请求日志分析框架ApiBoot Logging,特性列表如下所示:

    • 链路:为每一个请求生成一个链路的单条或者多条请求日志信息,精准定位程序出现问题的位置。
    • 耗时:可以分析出每一个请求的耗时,改善服务的性能瓶颈
    • 异常信息:请求遇到异常,提供请求日志的异常堆栈信息记录
    • 请求参数:可以获取RequestBodyPathParam两种方式的参数
    • 响应内容:可以获取本次请求响应的内容信息。
    • 服务信息:可获取提供服务的ID、IP、Port等信息。
    • 异步通知:请求日志数据采集后通过Event/Listener方式异步通知给RPCMQRESTLocal
    • 数据分析:阈值警告、异常通知等(短信、邮件等方式,2.1.1.RELEASE版本未实现.)

    ApiBoot Logging内部采用拦截器Filter组合完成一系列的操作。

    1. 如果一个请求的header信息内包含traceId(链路ID)则加入该链路,如果不存在则生成新的链路信息
    2. 如果一个请求的header信息内包含spanId(跨度ID),则使用该spanId作为parent spanId,对两个请求进行上下级关联。

    无缝支持Openfeign

    ApiBoot Logging支持Spring Cloud Openfeign的方式请求,在SpringCloud微服务应用中如果你发起一个Http请求,而该请求在服务端通过openfeign访问其他服务,这时ApiBoot Logging会通过openfeignInterceptor携带TraceIdSpanId到下一个服务,完成请求日志的链路信息透传。

    架构设计图

    ApiBoot Logging 组件架构图.png

    更新日志

    2.1.1.RELEASE (2019-7-16日发布)

    • ApiBoot Logging 初版发布
      • 零侵入代码设计
      • 支持链路日志输出
      • 支持SpringCloud Openfeign透传日志链路信息
      • 支持请求完成后多个Order Notice通知请求日志信息
      • 支持请求异常堆栈信息保存
      • 支持读取RequestBody内容
      • 支持读取ResponseBody内容
      • 支持请求日志关联具体服务Id
      • 支持自定义存储日志
    • ApiBoot OAuth
      • 支持Redis存储Token
      • 支持内存方式、Redis方式配置多客户端
      • 支持内存方式、Redis方式配置token有效期
    • ApiBoot Mybatis Enhance
      • 丰富示例
      • 官网文档更新

    源码、文档地址

    GitHub Wiki:https://github.com/hengboy/api-boot/wiki 码云 Wiki:https://gitee.com/hengboy/api-boot/wikis

    ApiBoot 目前集成组件

    ApiBoot提供的所有封装依赖对应第三方框架关系如下所示:

    依赖名称 介绍
    api-boot-starter 所有Starter的基础依赖
    ApiBoot 整合案例 ApiBoot落地使用示例,是恒宇少年知识库小程序接口源码
    api-boot-starter-mail ApiBoot集成阿里云邮件服务
    api-boot-starter-logging 零侵入、链路式日志分析框架
    api-boot-starter-http-converter 集成FastJson作为格式化返回JSON
    api-boot-starter-security-oauth-jwt 集成SpringSecurity、Oauth、Jwt安全、认证框架
    api-boot-starter-swagger 集成Swagger2作为接口服务文档
    api-boot-starter-alibaba-oss 集成阿里云Oss对象存储接口服务
    api-boot-starter-alibaba-sms 集成阿里云国际短信接口服务
    api-boot-starter-quartz 集成分布式定时任务框架Quartz
    api-boot-starter-datasource-switch 集成支持多数据源自动切换、动态创建数据源
    api-boot-starter-resource-load 资源与业务完全分离、自动化读取
    api-boot-starter-message-push 推送服务,集成极光推送
    api-boot-starter-rate-limiter 接口QPS限流
    api-boot-starter-mybatis-enhance 集成Myabtis Enhance 持久化框架
    api-boot-starter-mybatis-pageable 集成Mybatis Pageable 自动分页插件
    api-boot-mybatis-enhance-maven-codegen Mybatis Enhance专属代码插件

    相关文章

      网友评论

        本文标题:ApiBoot 2.1.1.RELEASE版本发布,新增链路式日

        本文链接:https://www.haomeiwen.com/subject/mjuflctx.html