Spring Boot 跟踪微服务日志
-
Spring Boot 跟踪微服务日志
如果发生任何问题,大多数开发人员都将面临跟踪日志的困难。可以通过Spring Cloud Sleuth和ZipKin服务器针对Spring Boot应用程序解决此问题。 -
Spring Cloud Sleuth
Spring Cloud Sleuth日志以以下格式打印-说明:- application-name = 应用程序名称
- traceid = 在将同一服务或一个服务调用到另一个服务时,每个请求和响应的traceid都相同。
- spanid = Span Id与跟踪traceid一起打印。每个请求和响应将一个服务调用到另一个服务时,Span ID都不相同。
- zipkin-export = 默认情况下为false。如果为true,则日志将导出到Zipkin服务器。
现在,在您的构建配置文件中添加Spring Cloud Starter Sleuth依赖项,如下所示:Maven用户可以在pom.xml文件中添加以下依赖项-对于Maven,将Docker Maven插件添加到您的构建配置文件pom.xml中Gradle用户可以在build.gradle文件中添加以下依赖项-现在,将Logs添加到您的Spring Boot应用程序Rest Controller类文件中,如下所示-现在,在application.properties文件中添加应用程序名称,如下所示:下面给出了构建配置文件的完整代码-Gradle – build.gradle您可以创建一个可执行的JAR文件,并使用以下Maven或Gradle命令运行Spring Boot应用程序。对于Maven,您可以使用以下命令-在“BUILD SUCCESS”之后,您可以在target目录下找到JAR文件。对于Gradle,您可以使用以下命令-在“BUILD SUCCESSFUL”之后,您可以在build/libs目录下找到JAR文件。现在,使用如下所示的命令运行JAR文件:您会发现该应用程序已在Tomcat端口8080上启动。现在在您的Web浏览器中访问URL http://localhost:8080,您可以看到以下输出-您可以在控制台窗口中看到以下日志。观察日志以以下格式打印:[application-name,traceid,spaid,zipkin-export] -
Zipkin服务器
Zipkin是一个用于监视和管理Spring Boot应用程序的Spring Cloud Sleuth日志的应用程序。要构建Zipkin服务器,我们需要在构建配置文件中添加Zipkin UI和Zipkin Server依赖项。Maven用户可以在pom.xml文件中添加以下依赖项-对于Maven,将Docker Maven插件添加到您的构建配置文件pom.xml中Gradle用户可以在build.gradle文件中添加以下依赖项-现在,在应用程序属性文件中配置server.port = 9411。对于属性文件用户,在application.properties文件中添加以下属性。对于YAML用户,在application.yml文件中添加以下属性。在您的主要Spring Boot应用程序类文件中添加@EnableZipkinServer注解。@EnableZipkinServer注解用于使您的应用程序充当Zipkin服务器。下面给出了构建配置文件的完整代码-Maven – pom.xmlGradle – build.gradle您可以创建一个可执行的JAR文件,并使用以下Maven或Gradle命令运行Spring Boot应用程序。对于Maven,您可以使用以下命令-在“BUILD SUCCESS”之后,您可以在target目录下找到JAR文件。对于Gradle,您可以使用以下命令-在“BUILD SUCCESSFUL”之后,您可以在build/libs目录下找到JAR文件。现在,使用如下所示的命令运行JAR文件:您会发现该应用程序已在Tomcat端口9411上启动。现在在您的Web浏览器中访问URL http://localhost:9411/zipkin,您可以看到以下输出-然后,在客户端服务应用程序中添加以下依赖项,并指出Zipkin服务器URL,以通过Zipkin UI跟踪微服务日志。现在,在构建配置文件中添加Spring Cloud Starter Zipkin依赖关系,如下所示:Maven用户可以在pom.xml文件中添加以下依赖项-Gradle用户可以在build.gradle文件中添加以下依赖项-现在,在Spring Boot应用程序中添加Always Sampler Bean,以将日志导出到Zipkin服务器。如果添加AlwaysSampler Bean,则Spring Sleuth Zipkin Export选项将自动从false更改为true。接下来,在客户端服务application.properties文件中配置Zipkin Server基本URL。然后,提供跟踪ID,并在Zipkin UI中找到跟踪。 -- http://localhost:9411/zipkin/traces/{traceid}/