Apache camel 如何忽略骆驼指标中的路由?

Apache camel 如何忽略骆驼指标中的路由?,apache-camel,Apache Camel,我正在从camel metrics向AWS CloudWatch发送度量数据。在这样做的同时,一些驼峰路线(收集指标,处理错误)正在扭曲我的数据 因此,我希望这些路线仍然有效,但被排除在骆驼指标之外。是否有这样做的选项/属性?我没有发现任何与此相关的东西 我的另一个猜测是Camel Metrics有一个拦截器SpringBean,它收集数据并保存到JMX。如果我可以重写该方法并手动排除不必要的路由,那也可以。那么有没有这样的拦截器,它叫什么名字 编辑: 我找到了MetricsRoutePolic

我正在从camel metrics向AWS CloudWatch发送度量数据。在这样做的同时,一些驼峰路线(收集指标,处理错误)正在扭曲我的数据

因此,我希望这些路线仍然有效,但被排除在骆驼指标之外。是否有这样做的选项/属性?我没有发现任何与此相关的东西

我的另一个猜测是Camel Metrics有一个拦截器SpringBean,它收集数据并保存到JMX。如果我可以重写该方法并手动排除不必要的路由,那也可以。那么有没有这样的拦截器,它叫什么名字

编辑:

我找到了MetricsRoutePolicyFactory,它为路由创建了度量策略。我从metrics策略中过滤掉了不必要的路由,因此它们不会被收集,但是它们仍然可以到达jmx

EDIT2:


我发现,Camel默认情况下会将度量保存到JMX(至少是我使用的:routes和context),因此它与Camel度量无关。

Camel JMX存储所有路由和CamelContext等的JMX数据。你不能只说这个路由,而不是那个路由。有一张JIRA的机票是关于每一条路线都能打开JMX的。但今天它没有得到实施

但是,另一种方法是将Camel JMX配置为仅在显式分配了id的情况下注册mbean。然后,您可以为要监视的路由使用分配ID。然后使用分配的路线id离开其他路线。然而,如果您还需要处理器的JMX统计数据,那么您也需要为它们分配ID

请参阅位于的选项onlyRegisterProcessorWithCustomId

为什么您不能自己过滤那些不需要的路由,例如从camel metrics->filter->aws中过滤cw@ClausIbsen因为camel度量也保存了整个上下文的度量,我也监视它。在JMX中,这些metics被错误处理程序等扭曲了。谢谢!你能帮我吗?如何仅向Spring添加带有CustomId的RegisterProcessor?我猜有一个前缀,但我不确定是什么,我无法从文档中看到它。我似乎无法使用系统属性。我可以看到空闲的路线是“路线1”,“路线2”。。。在MBeans的JMX中