注册中心请参考:
https://blog.csdn.net/MadLifeBin/article/details/120332483
可搭建单机版用于 Demo 测试
服务提供与消费请参考:
https://blog.csdn.net/MadLifeBin/article/details/120420139
全链路监控添加日志支持maven添加依赖版本参考父POM
<dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId></dependency><dependency><groupId>org.slf4j</groupId><artifactId>log4j-over-slf4j</artifactId></dependency><dependency><groupId>org.slf4j</groupId><artifactId>jcl-over-slf4j</artifactId></dependency>
服务双方添加日志配置文件
文章插图
服务双方增加过滤器为每个请求创建traceId启动类增加注解@ServletComponentScan
@Order(1)@WebFilter(urlPatterns = "/*",filterName = "traceIdFilter")public class TraceIdFilter implements Filter {public final static String MDC_TRACE_ID = "traceId";@Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {HttpServletRequest httpRequest = (HttpServletRequest) request;String traceId = httpRequest.getHeader(MDC_TRACE_ID);if (StringUtils.isBlank(traceId)) {traceId = IdUtil.fastSimpleUUID();;}MDC.put(MDC_TRACE_ID, traceId);ThreadLocalUtils.setTraceId(traceId);HttpServletResponse httpResponse = (HttpServletResponse) response;httpResponse.setHeader(MDC_TRACE_ID, traceId);chain.doFilter(request, response);}}
同时将traceId写回到response的header中,方便在前端获取traceId.consumer配置OpenFeign透传traceId
@Componentpublic class OpenFeignRequestInterceptor implements RequestInterceptor {@Overridepublic void Apply(RequestTemplate requestTemplate) {String traceId = MDC.get(TraceIdFilter.MDC_TRACE_ID);requestTemplate.header(TraceIdFilter.MDC_TRACE_ID, traceId);}}
测试服务双方的调用链路上增加打印日志语句LOGGER.info("userId:{}",userId);
consumer文章插图
provider
文章插图
根据traceId追踪日志
- 启动Eureka、Provider、Consumer
- 浏览器调用接口,在浏览器控制台拿到traceId
- 分别去对应服务的日志查找具体日志行 。
文章插图
文章插图
若搭配上阿里云的 SLS 或者 自行搭建的 EFLK,全链路日志只会更加方便
【SpringCloud微服务之OpenFeign添加traceId全链路监控】
推荐阅读
- 微软 Win10 KB5011831 发布:修复黑屏问题,改进安全启动组件
- 微软:Win10最稳定版本21H2已全面开放!你还不升级
- 男人不能吃茴香,茴香怎么吃
- 微波炉可以加热葡萄吗?
- 9个叹为观止的微信小程序,个个好用不要钱,建议低调使用
- 云服务器一次性买三年划得来吗?
- 服务器出问题了,作为IT,怎样才能第一个知道?免得被骂
- Windows操作系统|微软尴尬了!用户对Windows 11不感冒 升级率可怜到不行
- 微软|Win11全新任务管理器曝光!缤纷多彩
- 公交|西安人注意!微信“乘车码”小程序不再支持公交 官方致歉