micrometer - 千分尺 - 在度量名称中添加默认前缀
问题描述
在千分尺中,我们可以创建一个新的仪表,做一些类似的事情
myMeterRegistry.gauge("my_metric", 69);
默认情况下可以为我的myMeterRegistry
对象包含一个“前缀”名称吗?
手动,它应该像:
myeterRegistry.gauge("myprefix_my_metric", 69);
我的目标是每个在我的应用程序中创建计量指标的开发人员都不必注意在指标名称的开头添加“myprefix_”
解决方案
MeterFilter可以让你这样做(但不要这样做!):
new MeterFilter() {
@Override
public Meter.Id map(Meter.Id id) {
return id.withName("myprefix." + id.getName());
}
}
然而,一个常见的前缀通常是一种不正确的维度。通常用户会尝试添加区域、主机或应用程序的名称作为前缀。这些最好作为标签提供,因为那时您可以跨系统聚合并使用通用仪表板。
推荐的commonTags
方法:
registry.config().commonTags("team", "myteam", "region", "us-east-1");
对于分层计量注册表,标签将作为前缀包含在名称中。
推荐阅读
- html - 使用 BeautifulSoup4 从标签中获取标题属性
- asp.net - 使用必填字段验证器联系资源文件值
- node.js - Npm install 与本地依赖和 package-lock.json 抛出错误
- unit-testing - PowerMockito whenNew thenReturn 不工作
- .net - 带有 .net 框架的 gRPC 的 PEM 文件
- excel - 更改组中的复选框表单控件
- swift - 如何在 SwiftUI 中使用来自网络调用的数据填充 TextField?
- reactjs - 使用 formik 设置字段值以从外部按钮反应选择组件
- go - 处理上下文取消错误
- python - 如何使用我当前的 python 设置安装 NumPy 和 Pandas?