camel_Apache Camel 2.14中的更多指标

camel

camel

Apache Camel 2.14将于本月晚些时候发布。 由于正在解决某些Apache基础结构问题,因此存在一些问题。

这篇博客文章讨论的是我们添加到此版本中的新功能之一。 感谢Lauri Kimmel捐赠了骆驼指标组件,我们将其与出色的Codehale指标库集成在一起。

因此,我将这一组件又向前推进了一步,并将其与Camel路由集成在一起,以便我们使用codehale指标获得有关路由性能的其他指标。 这使最终用户可以无缝地将骆驼路由信息与他们使用码hale度量收集的现有数据一起提供。

还要注意,我们有很多来自骆驼核心的现有指标,这些指标当然仍然存在。

Codehale带来的好处是他们拥有骆驼核心中没有的其他统计数据。

要使用codehale mics,您需要做的是:

  1. 添加骆驼指标组件
  2. 启用XML或Java代码中的路由指标

要在XML中启用,请声明a,如下所示:

&;t;bean id="metricsRoutePolicyFactory"
        class="org.apache.camel.component.metrics.
               routepolicy.MetricsRoutePolicyFactory"/>

通过在您的CamelContext上调用此方法,在Java代码中也很容易做到

context.addRoutePolicyFactory(new MetricsRoutePolicyFactory());

现在,只有在可以显示性能指标的情况下,性能指标才可用,并且可以使用hawtio 。 注意,您可以使用可以与JMX集成的任何类型的监视工具,因为这些度量标准可以通过JMX获得。 实际数据为100%codehale json格式,其中一部分数据如下图所示。

路由指标JSON数据样本

路由指标JSON数据样本

hawtio的下一发行版支持Camel 2.14,并自动检测是否启用了路由度量,如果启用,则会显示一个子项,在该子项中可以在图形图表中实时查看信息。

hawtio已检测到我们启用了路由指标,并显示了一个子选项卡,可在其中实时查看数据

hawtio已检测到我们启用了路由指标,并显示了一个子选项卡,可在其中实时查看数据

上面的屏幕截图来自我们现成的新的camel-example-servlet-rest-tomcat 。 此示例演示了Camel 2.14中的另一个新功能,即Rest DSL(我将在后面写博客)。 该示例启用了路由度量,因此,我要做的就是将此示例与hawtio (hawtio-默认WAR)一起部署在Apache Tomcat 8中。

使用hawtio,您还可以构建自定义的仪表板,因此,在这里最后,我将一个仪表板与从hawtio到各种屏幕的屏幕放在一起,以提供Camel应用程序的自定义视图。

具有骆驼路线和指标的hawtio仪表板以及控制路线的控制面板,以及底部的日志。

具有骆驼路线和指标的hawtio仪表板以及控制路线的控制面板,以及底部的日志。

翻译自: https://www.javacodegeeks.com/2014/09/more-metrics-in-apache-camel-2-14.html

camel

Apache Camel 3.1 支持快速加载 XML 路由。在之前的版本,需要手动编写 Java 代码来定义路由。但是现在,您可以使用 XML 文件来定义路由,这样可以快地创建和维护路由。 要使用 XML 定义路由,您需要创建一个名为“camel-context.xml”的文件,并放置在项目的 classpath 下。然后在文件定义路由,例如: ```xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camel="http://camel.apache.org/schema/spring" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd"> <camelContext id="myCamelContext" xmlns="http://camel.apache.org/schema/spring"> <route> <from uri="file:data/inbox"/> <to uri="file:data/outbox"/> </route> </camelContext> </beans> ``` 在这个例子,我们定义了一个从“data/inbox”文件夹读取文件,并将其发送到“data/outbox”文件夹的路由。 要使用这个 XML 文件,您需要在 Java 代码创建一个 CamelContext 实例,并将 XML 文件的路径传递给它,例如: ```java CamelContext context = new DefaultCamelContext(); context.addRoutesFromXml("classpath:camel-context.xml"); context.start(); ``` 这将加载 XML 文件,并将其定义的路由添加到 CamelContext 。然后,您可以像使用任何其他 Camel 路由一样使用它。 总之,使用 XML 定义路由可以快地创建和维护路由,并且使代码易于阅读和理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值