跳到主要内容

Micrometer Humio

DeepSeek V3 中英对照 Humio Micrometer Humio

Humio 是一款具有内置仪表板功能的维度时间序列 SaaS 服务。

1. 安装 micrometer-registry-humio

建议使用 Micrometer(或您使用的框架,如果有)提供的 BOM,您可以在此处查看如何配置 here。以下示例假设您正在使用 BOM。

1.1. Gradle

配置 BOM 之后,添加以下依赖:

implementation 'io.micrometer:micrometer-registry-humio'
groovy
备注

此依赖项不需要指定版本,因为其版本由 BOM 定义。

1.2. Maven

配置 完 BOM 之后,添加以下依赖:

<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-humio</artifactId>
</dependency>
xml
备注

由于该依赖项的版本由 BOM 定义,因此不需要指定版本。

2. 配置

以下示例配置了一个 Humio 实例:

HumioConfig humioConfig = new HumioConfig() {
@Override
public String apiToken() {
return MY_TOKEN;
}

@Override
@Nullable
public String get(String k) {
return null;
}
};
MeterRegistry registry = new HumioMeterRegistry(humioConfig, Clock.SYSTEM);
java

HumioConfig 是一个包含一组默认方法的接口。如果在 get(String k) 的实现中,你将其绑定到一个属性源而不是返回 null,那么你可以覆盖默认配置。例如,Micrometer 的 Spring Boot 支持会将前缀为 management.metrics.export.humio 的属性直接绑定到 HumioConfig 上:

management.metrics.export.humio:
api-token: YOURKEY

# You will probably want disable Humio publishing in a local development profile.
enabled: true

# The interval at which metrics are sent to Humio. The default is 1 minute.
step: 1m

# The cluster Micrometer will send metrics to. The default is "https://cloud.humio.com"
uri: https://myhumiohost
yml

3. 图表绘制

本节将快速介绍如何在 Humio 中渲染来自 Micrometer 的有用指标表示。

3.1. 定时器

Timer 的 Humio 实现在 Humio 中生成了四个字段:

  • count:每秒总时间的速率。

  • sum:每秒调用次数的速率。

  • max:显示记录的最大值的滑动窗口。

  • avg:仅针对这组标签值的不可聚合的平均值。

以下查询构建了一个可按维度聚合的每个 URI 的平均延迟:

name = http_server_requests
| timechart(uri, function=max(avg))
text

Humio 渲染的计时器

图 1. 模拟服务上的计时器。