微服务架构之Spring Boot(七十七)

2022-05-23 15:45:22 浏览数 (1)

55.3.1自定义Jolokia

Jolokia有许多设置,您可以通过设置servlet参数来进行传统配置。使用Spring Boot,您可以使用 application.properties 文件。为此,请

在参数前加 management.endpoint.jolokia.config. ,如以下示例所示:

management.endpoint.jolokia.config.debug=true

55.3.2禁用Jolokia

如果您使用Jolokia但不希望Spring Boot配置它,请将 management.endpoint.jolokia.enabled 属性设置为 false ,如下所示:

management.endpoint.jolokia.enabled=false

56.记录器

Spring Boot Actuator包括在运行时查看和配置应用程序日志级别的功能。您可以查看整个列表或单个记录器的配置,该配置由显式配置的日志

记录级别以及日志记录框架为其提供的有效日志记录级别组成。这些级别可以是以下之一:

TRACE

DEBUG

INFO

WARN

ERROR

FATAL

OFF

null

null 表示没有明确的配置。

56.1配置记录器

要配置给定的记录器, POST 是资源URI的部分实体,如以下示例所示:

{

"configuredLevel": "DEBUG"

}

要“重置”记录器的特定级别(并使用默认配置),您可以传递 null 的值 configuredLevel 。

57.度量标准

Spring Boot Actuator为Micrometer提供依赖关系管理和自动配置, Micrometer是一个支持众多监控系统的应用程序指标外观,包括:

AppOptics

Atlas

Datadog

Dynatrace

Elastic

Ganglia

Graphite

Humio

Influx

JMX

KairosDB

New Relic

Prometheus

SignalFx

简单(内存中)

StatsD

Wavefront

57.1入门

Spring Boot自动配置组合 MeterRegistry ,并为组合路径中找到的每个受支持的实现添加一个注册表。在运行时类路径中依

赖 micrometer-registry-{system} 足以使Spring Boot配置注册表。

大多数注册管理机构都有共同点 例如,即使Micrometer注册表实现位于类路径上,您也可以禁用特定的注册表。例如,要禁用Datadog:

management.metrics.export.datadog.enabled=false

Spring Boot还会将任何自动配置的注册表添加到 Metrics 类的全局静态复合注册表中,除非您明确告诉它不要:

management.metrics.use-global-registry=false

在注册表中注册任何仪表之前,您可以注册任意数量的 MeterRegistryCustomizer beans以进一步配置注册表,例如应用通用标签:

@Bean

MeterRegistryCustomizer<MeterRegistry> metricsCommonTags() {

return registry -> registry.config().commonTags("region", "us-east-1");

}

您可以通过更具体地说明泛型类型,将自定义应用于特定的注册表实现:

@Bean

MeterRegistryCustomizer<GraphiteMeterRegistry> graphiteMetricsNamingConvention() {

return registry -> registry.config().namingConvention(MY_CUSTOM_CONVENTION);

}

使用该设置,您可以在组件中注入 MeterRegistry 并注册指标:

@Component

public class SampleBean {

private final Counter counter;

public SampleBean(MeterRegistry registry) {

this.counter = registry.counter("received.messages");

}

public void handleMessage(String message) {

this.counter.increment();

// handle message implementation

}

}

Spring Boot还配置了 可以通过配置或专用注释标记控制的内置检测(即 MeterBinder 实现)。

0 人点赞