ApiBoot实现零代码整合Spring Security & OAuth2

接口服务的安全性一直是程序员比较注重的一个问题,成熟的安全框架也比较多,其中一个组合就是Spring SecurityOAuth2的整合,在ApiBoot内通过代码的封装、自动化配置实现了自动化整合这两大安全框架。

ApiBoot Logging Admin可视化界面管理日志

ApiBoot Logging Admin支持界面可视化查看请求日志信息,初期版本支持查看上报日志的服务列表最新的链路日志等功能,还可以整合Spring Security配置用户名、密码

ApiBoot Logging使用RestTemplate透传链路信息

在上一篇文章【ApiBoot Logging使用SpringCloud Openfeign透传链路信息】中我们详细的讲解了ApiBoot Logging整合SpringCloud通过Openfeign进行透传链路信息,包括traceId(链路编号)、parentSpanId(上级单元编号)等信息。
ApiBoot Logging不仅仅可以使用Openfeign传递链路信息,还支持RestTemplate方式,本篇文章来详细的讲解下具体的使用方式。

ApiBoot Logging使用SpringCloud Openfeign透传链路信息

ApiBoot Logging可以无缝整合SpringCloud来采集请求日志,目前支持RestTemplateOpenfeign两种方式,我们本章来讲解下在使用Openfeign完成服务之间请求相互调用的一条链路请求日志是否可以都采集到。

ApiBoot Logging整合SpringCloud Eureka负载均衡上报日志

ApiBoot Logging支持整合服务注册中心(Eureka、Consul、Nacos Discovery、Zookeeper…)进行上报请求日志,Logging Client会从服务注册中心内找到指定ServiceIDLogging Admin具体可用实例,通过SpringCloud Discovery内部的负载均衡策略返回Logging Admin的部署服务器IP以及端口号,这样Logging Client就可以完成请求日志的上报流程。

ApiBoot Logging整合Spring Security安全上报日志

ApiBoot Logging在上报日志时虽然是一般通过内网的形式部署,不过安全方面还是主要依赖于服务器的安全策略(防火墙),为了提高日志上报的安全性,ApiBoot Logging支持了整合Spring Security来使用Basic Auth的形式上传日志信息。

ApiBoot Logging忽略路径不进行采集日志

ApiBoot Logging支持排除指定路径不参与日志的采集,当我们的服务集成actuator时,会不断的重复调用内置的路径导致大量采集到一些无关业务的日志信息,当然这只是一个例子,集成其他的第三方组件时也可能出现定时重复调用接口的场景。

修改ApiBoot Logging日志采集的前缀

ApiBoot Logging支持指定单个或者多个路径的前缀进行采集,也就是我们可以指定/user/**或者/order/**下的单个或者同时指定多个路径进行采集请求日志,其他不符合Ant表达式的路径就会被忽略掉。

自定义ApiBoot Logging链路以及单元ID

ApiBoot Logging会为每一个请求都对应创建链路编号(TraceID)以及单元编号(SpanID),用于归类每一次请求日志,通过一个链路下日志单元的Parent SpanID可以进行上下级关系的梳理。

将ApiBoot Logging采集的日志上报到Admin

通过ApiBoot Logging可以将每一条请求的详细信息获取到,在分布式部署方式中,一个请求可能会经过多个服务,如果是每个服务都独立保存请求日志信息,我们没有办法做到统一的控制,而且还会存在日志数据库业务数据库不一致的情况出现(可能会用到多数据源配置),正因为这个问题ApiBoot Logging提供了一个Admin的概念,将客户端采集到的的每一条日志都进行上报到Admin,由Admin进行分析、保存等操作。

微信扫码关注程序员 - 恒宇少年微信公众号
恒宇少年微信公众号

1. 专属优惠分享

2. 知识点讲解

3. 开源框架源码分析

4. 赠书活动

5. 免费资料

6. 文章源码获取

原创文章更新平台 >>>

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×