c# - Elastic-APM TransactionIgnoreUrls
问题描述
为了降低 apm 日志记录的负载,我们希望排除我们的监控 URL。我试图在 de config 中使用 TransactionIgnoreUrls 来实现这一点,但由于某种原因,我无法让它工作。根据文档,我应该提供一个字符串列表。以下是我使用的配置(我的尝试之一)。我想做的是排除初学者的 ping 端点,但最终以包含/status/
在 url 中的所有端点结束
"ElasticApm__TransactionSampleRate": "1.0",
"ElasticApm__Enabled": "true",
"ElasticApm__Environment": "Development",
"ElasticApm__SecretToken": "some token",
"ElasticApm__ServerUrls": "serverurl",
"ElasticApm__VerifyServerCert": "FALSE",
"ElasticApm__ServiceName": "MyApi"
"ElasticApm__TransactionIgnoreUrls": [
"*pin*"
],
启动.cs
app.UseAllElasticApm(Configuration);
上面没有过滤掉我们的端点(也尝试过"ping"
, "/ping"
,和许多其他可能性) "status"
,"/status"
因为它在 apm 仪表板中仍然可见。
我可能做错了什么,但我不知道它可能是什么。
解决方案
- 配置应该是一个逗号分隔的字符串。我只是查看了文档,确实有点令人困惑。所以它必须是
"UrlToIgnore1, UrlToIgnore2"
(代理将在内部解析它)而不是像["UrlToIgnore1", "UrlToIgnore2"]
. 因此,在您的情况下,它应该是公正的"*pin*"
,如果您想附加另一个要忽略的值,只需在逗号 (,
) 之后将其添加到字符串中。 - 你把你粘贴在这里的配置放在哪里?这种双下划线格式是您设置的环境变量,对吗?如果是这样,只需放入
"*pin*"
,ElasticApm__TransactionIgnoreUrls
如果您使用appsettings.json
这里,它应该是这样的:
"ElasticApm": {
"TransactionIgnoreUrls": "*pin*"
}
推荐阅读
- multithreading - gRPC Java 客户端能否通过长期存在的 gRPC 流并行发送多个请求以及如何管理 N 个流
- html - 背景图像不透明度 - 在 CSS 中
- java - 在java中通过调度函数更新的访问变量
- python - 在 macOS Big Sur 11.3.1 上安装 lxml 3.8.0 时出错
- r-markdown - 在 Rmarkdown 中,如何将字符下划线和帽子重音结合起来?
- c++ - 从尚未完全构造的对象上的不同线程调用成员函数是否合法?
- visual-studio - CMake Fortran 没有正确排序源
- transform - 使用矩阵更新旋转后如何更新抓取手柄位置
- reactjs - 加载组件图像时反应原生渲染整个组件?
- sql - 如何按分区填充 BigQuery 中缺失的日期(无回填)