当前位置: 首页 > wzjs >正文

wordpress 音乐主题模板下载手机优化是什么意思

wordpress 音乐主题模板下载,手机优化是什么意思,济南优化排名公司,天坛装修公司口碑怎么样ELK怎么实现跨服务日志追踪,Trace-Id 具体实现方案及代码_kibana关联其他服务器的日志-CSDN博客 ELKMDC追踪日志 ---- SpringCloud实现传递_elk的mdc-CSDN博客 SpringBoot之HandlerInterceptor拦截器的使用 ——(一)-CSDN博客 在使用ELK&a…

ELK怎么实现跨服务日志追踪,Trace-Id 具体实现方案及代码_kibana关联其他服务器的日志-CSDN博客

ELK+MDC追踪日志 ---- SpringCloud实现传递_elk的mdc-CSDN博客 

SpringBoot之HandlerInterceptor拦截器的使用 ——(一)-CSDN博客

 

在使用ELK(Elasticsearch, Logstash, Kibana)进行日志管理时,通过traceId实现日志跟踪是一种常见的做法。traceId可以帮助我们在分布式系统中追踪请求的完整链路。通过Spring的HandlerInterceptor,我们可以在请求进入时生成traceId,并将其传递到日志中。

实现思路

  1. 生成traceId:在请求进入时生成一个唯一的traceId,并将其存储在MDC(Mapped Diagnostic Context)中。

  2. 传递traceId:在请求处理过程中,确保traceId能够传递到各个组件和日志中。

  3. 清理traceId:在请求处理完成后,清理MDC中的traceId,避免内存泄漏。

代码实现

1. 创建TraceIdInterceptor

首先,我们需要创建一个HandlerInterceptor实现类,用于在请求进入时生成traceId,并在请求完成后清理traceId

java

复制

import org.slf4j.MDC;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.UUID;@Component
public class TraceIdInterceptor implements HandlerInterceptor {private static final String TRACE_ID = "traceId";@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {// 生成唯一的traceIdString traceId = UUID.randomUUID().toString();// 将traceId放入MDCMDC.put(TRACE_ID, traceId);return true;}@Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {// 请求完成后清理MDC中的traceIdMDC.remove(TRACE_ID);}
}
2. 注册TraceIdInterceptor

接下来,我们需要将TraceIdInterceptor注册到Spring的拦截器链中。

java

复制

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;@Configuration
public class WebConfig implements WebMvcConfigurer {@Autowiredprivate TraceIdInterceptor traceIdInterceptor;@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(traceIdInterceptor);}
}
3. 配置日志输出traceId

在日志配置文件中,配置日志输出格式,确保traceId能够被打印出来。以logback.xml为例:

xml

复制

<configuration><appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"><encoder><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - [%X{traceId}] %msg%n</pattern></encoder></appender><root level="info"><appender-ref ref="STDOUT" /></root>
</configuration>

运行 HTML

在这个配置中,%X{traceId}会从MDC中获取traceId并输出到日志中。

4. 在代码中使用traceId

在业务代码中,你可以通过MDC获取traceId,并将其传递到其他服务或日志中。

java

复制

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.slf4j.MDC;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
public class MyController {private static final Logger logger = LoggerFactory.getLogger(MyController.class);@GetMapping("/test")public String test() {// 获取traceIdString traceId = MDC.get("traceId");logger.info("Processing request with traceId: {}", traceId);return "Hello, World!";}
}

总结

通过上述步骤,我们实现了一个简单的traceId日志跟踪系统。HandlerInterceptor在请求进入时生成traceId并将其放入MDC,在请求完成后清理MDC。日志配置确保traceId能够被输出到日志中,从而方便我们在ELK中追踪请求的完整链路。

扩展

  • 分布式系统中的traceId传递:在微服务架构中,traceId需要在服务之间传递。可以通过HTTP头、消息队列等方式传递traceId

  • 异步任务中的traceId:在异步任务中,traceId可能会丢失。可以通过自定义线程池或使用TaskDecorator来确保traceId在异步任务中传递。

通过这些扩展,你可以在更复杂的系统中实现全链路的日志跟踪。

 

http://www.dtcms.com/wzjs/487063.html

相关文章:

  • 泉州做外贸网站华为手机业务最新消息
  • 怎样做网站的后台搜索引擎优化策略不包括
  • 做网站的项目开发计划书seo中文意思是
  • 深圳台历制作seo公司广州
  • 做网站建设的一般在哪儿找北京朝阳区优化
  • 英国小子做房产网站石家庄关键词优化报价
  • 云南网站建设运营广州今日刚刚发生的新闻
  • ui设计原理seo优化软件
  • 东营网站建设服务电话怎么创作自己的网站
  • 网站建设毕业设计怎么做成都公司建站模板
  • 深圳市外贸网站建设怎样在百度上发布自己的信息
  • 可以做动画的网站都有哪些软件下载识别关键词软件
  • 如何搭建自己的网站服务器地址梅花seo 快速排名软件
  • 世界十大广告公司排名怎么做seo网站关键词优化
  • 做海报找图片的网站郑州seo服务公司
  • 镇江互联网公司宁波seo优化外包公司
  • 做传单的网站引擎优化搜索
  • 黄岛做网站锦绣大地seo
  • 俄罗斯b2b常用网站站长工具seo综合
  • 重庆涪陵网站建设公司国外免费网站域名服务器
  • 惠州网站建设制作优化电脑的软件有哪些
  • 冶金建设网站谷歌play商店官网
  • wordpress默认主题seo优化主要工作内容
  • 响应式网站 html素材网
  • 企业网站每年续费吗微平台推广
  • 垂直汽车网站做电商的优势巨量广告投放平台
  • 爱客crm手机下载seo零基础教学
  • 服装网站怎么做seo站长博客
  • php网站开发实用技术练习题app推广地推接单网
  • 弓长岭网站建设百度指数在线查询