【问题标题】:Sprint Boot Env Actuator Endpoint - Get current property using JavascriptSpring Boot Env Actuator Endpoint - 使用 Javascript 获取当前属性
【发布时间】:2017-09-10 01:51:54
【问题描述】:

出于调试目的,我想以实用的方式识别 Spring Boot 应用程序上给定属性的当前设置(使用 Actuator env 端点)。根据 Spring Boot 规范——可以通过多种方式设置属性(通过系统属性、属性文件等)。 /env/ 端点公开此信息。但是,它公开了所有属性,而不仅仅是当前和实际设置。

示例输出类似于:

{

  "systemProperties": {
  },
  "systemEnvironment": {
    "MY_SETTING": "value2",
  },
  "class path resource [application.properties]": {
    "my.setting": "value1"
  }
}

我可以安全地假设最上面的设置总是当前设置吗?我将使用端点并且只想提取当前设置(不是全部)。我想避免将特定逻辑添加到设置优先的消费服务中——尽管我不确定这是否可行,因为 JSON 中并没有真正的顺序概念。

.. 如果是这样的话,有没有一种简单的方法可以使用 Javascript 来获得它(假设我已经使用了 JSON)。似乎使用 JS 的解决方案要么变得 hacky,要么需要某种 3rd 方库。

【问题讨论】:

  • 试试 /env/foo.property
  • 很好,这行得通!奇怪的是我找不到任何关于它的文档

标签: javascript spring-boot


【解决方案1】:

如果您想获取通过各种方式(yaml、环境等)修改的属性的有效值,只需将该值的名称附加到 URL:

http://server:8080/env/logging.file

这适用于非数组类型的属性。

【讨论】:

  • 它似乎适用于引导原生属性,但不适用于我自己的属性。有没有办法让自定义属性得到相同的结果?
猜你喜欢
  • 2015-04-02
  • 1970-01-01
  • 2022-01-06
  • 2018-10-15
  • 1970-01-01
  • 2017-08-21
  • 2019-09-06
  • 2016-05-03
  • 1970-01-01
相关资源
最近更新 更多