您现在的位置是:主页 > news > 网站开发作品/bt磁力搜索

网站开发作品/bt磁力搜索

admin2025/6/5 5:33:51news

简介网站开发作品,bt磁力搜索,南城微网站建设,网站开发网址我认为Spring Boot带来了一些新的东西,特别是关于DevOps的东西-我已经写了一篇关于它的文章 。 但是,不仅有指标和运行状况检查。 在我之前的另一篇文章中,我描述了如何为Maven构建的应用程序提供版本信息。 本文将介绍使用Spring Boot时&…

网站开发作品,bt磁力搜索,南城微网站建设,网站开发网址我认为Spring Boot带来了一些新的东西,特别是关于DevOps的东西-我已经写了一篇关于它的文章 。 但是,不仅有指标和运行状况检查。 在我之前的另一篇文章中,我描述了如何为Maven构建的应用程序提供版本信息。 本文将介绍使用Spring Boot时&…

我认为Spring Boot带来了一些新的东西,特别是关于DevOps的东西-我已经写了一篇关于它的文章 。 但是,不仅有指标和运行状况检查。

在我之前的另一篇文章中,我描述了如何为Maven构建的应用程序提供版本信息。 本文将介绍使用Spring Boot时,以后的帖子是不必要的。

提醒一下,只需在POM中添加spring-boot-starter-actuator依赖项即可启用许多端点,其中包括:

  • /metrics监视应用程序
  • /health检查应用程序是否可以提供预期的服务
  • /bean列出上下文中的所有Spring bean
  • /configprops列出有关正在运行的配置文件的所有属性(如果有)

其中,其中一个特别感兴趣: /info 。 默认情况下,它什么都不显示-更确切地说是空JSON对象的字符串表示形式。

但是,在application.properties文件中设置的任何属性(或其配置文件样式之一)都将进入页面。 例如:

属性文件 输出量

Key

Value

info.application.name

 My Demo App

{"application" : {"name" : "My Demo App"}
}

设置静态信息肯定不错,但是我们的目标是在Spring Boot中获取我的应用程序的版本。 Spring Boot在process-resources构建阶段会自动过滤application.properties文件。 可以使用POM中的任何属性:只需在@字符之间设置即可。 例如:

属性文件 输出量

Key

Value

 info.application.version

@ [email protected]

{"application" : {"version" : "0.0.1-SNAPSHOT"}
}

请注意,Spring Boot Maven插件将删除生成的资源,因此应用程序将使用源中未经过滤的资源属性文件。 为了保留(并使用)生成的资源,请在POM中配置插件,如下所示:

<build><plugins><plugin><groupId> org.springframework.boot </groupId><artifactId> spring-boot-maven-plugin </artifactId><configuration><addResources> false </addResources></configuration></plugin></plugins>
</build>

至此,我们具有与上一篇文章相当的功能,但是我们可以走得更远。 maven-git-commit-id-plugin将生成一个git.properties将填充所有可能的git相关信息。 以下代码段是生成的文件的示例:

#Generated by Git-Commit-Id-Plugin
#Fri Jul 10 23:36:40 CEST 2015
git.tags=
git.commit.id.abbrev=bf4afbf
[email protected]
git.commit.message.full=Initial commit\n
git.commit.id=bf4afbf167d51909bd984c35ad5b85a66b9c44b9
git.commit.id.describe-short=bf4afbf
git.commit.message.short=Initial commit
git.commit.user.name=Nicolas Frankel
git.build.user.name=Nicolas Frankel
git.commit.id.describe=bf4afbf
[email protected]
git.branch=master
git.commit.time=2015-07-10T23\:34\:46+0200
git.build.time=2015-07-10T23\:36\:40+0200
git.remote.origin.url=Unknown

根据所有这些数据,端点中仅使用以下内容:

输出量

git.branch

{"git" : {"branch" : "master","commit" : {"id" : "bf4afbf","time" : "2015-07-10T23:34:46+0200"}}
}

git.commit.id

git.commit.time

由于路径和格式是一致的,因此您可以设计一个cronjob来解析所有应用程序,并针对每个服务器/环境生成一个包含所有这些信息的Wiki页面。 无需再通过SSH服务器和挖掘文件系统来发现版本。

因此,无论您是自己的DevOps还是只愿意帮助您的Ops, /info端点在您的组织中都是一项非常强大的资产。

更进一步:
  • Spring Boot文档

翻译自: https://blog.frankel.ch/more-devops-for-spring-boot/