【问题标题】:Micrometer With Microservice带有微服务的千分尺
【发布时间】:2018-08-17 13:54:45
【问题描述】:

我是千分尺的新手。谁能告诉我如何在 Spring Boot 中集中管理微服务指标?

在哪里可以获得所有注册的服务信息和矩阵以及存储在 influxdb 中的指标?

【问题讨论】:

  • 是的。我完成了本教程,但它适用于单体应用程序。我正在寻找可以为所有微服务集中编写代码的微服务
  • 集中在我不必在每个微服务中编写代码进行监控的意义上。我不确定这可能吗?
  • 如果您使用 Acutator,则有一些默认指标。但是,如果您想衡量任何特定服务,则必须逐案实施。
  • 哦,这意味着如果我必须监控特定服务而不是为每个微服务编写配置,对吗?

标签: spring-boot influxdb micrometer spring-micrometer


【解决方案1】:

假设您要问“如何将 Micrometer 与 Spring Boot 一起用于从在多个主机上具有多个实例的异构服务收集指标”,因为与假设的环境相比,微服务架构没有什么特别之处,您需要添加主机、应用程序实例等指标的维度。您可以使用通用标签支持来实现它。见the section for it in the Spring Boot reference guide


更新:

为了回答下面评论的附加问题,我创建了a sample showing how to use common tags with environment variables。请注意,它位于分支 common-tags-2.1.x-with-env,而不是 master

【讨论】:

  • 感谢您的快速回复。听起来不错,但我可以在哪里保留常用标签?假设我有 microservice-1 的 docker 映像,并且我已经为“region-1”编码。此区域名称已添加到我的 yml 文件中。现在我在 region-2 中托管了 microservice-1 在这种情况下 ii 有相同的 yml 文件,所以它再次标记了 region-1 .. 对我来说很困惑。
  • @BhargavPatel 您可以像使用 Spring Boot 中的其他属性一样使用环境变量。我更新了答案以提供一个示例链接。
  • @BhargavPatel,同一服务的所有实例都具有相同的环境。每个实例如何拥有唯一标签?另外,您将如何跨实例聚合数据?
  • @AlwynSchoeman 您可以传递 ENV 变量,该变量可以在服务启动时忘记唯一实例
猜你喜欢
  • 2021-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-01
  • 1970-01-01
  • 2019-08-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多