gpt4 book ai didi

java - 如何使用 Jolokia 启动通常由计时器触发的路段

转载 作者:行者123 更新时间:2023-12-01 11:49:35 26 4
gpt4 key购买 nike

我可以调用以下 URL 来查找 Camel 路线部分的状态...

http://localhost:8080/gateway047/jolokia/exec/org.apache.camel:context=VCM047,type=routes,name=%22VCM047_store_list_schedule%22/getState()

这将给出

{
timestamp: 1425658189,
status: 200,
request: {
operation: "getState()",
mbean: "org.apache.camel:context=VCM047,name="VCM047_store_list_schedule",type=routes",
type: "exec"
},
value: "Started"
}

路线部分定义为...

<route id="VCM047_store_list_schedule">
<!-- Fire every 8 hours -->
<from uri="timer://storeListTimer?fixedRate=true&amp;period=28800000"/>

<transform>
<simple>{{WebStoresToProcess}}</simple>
</transform>

<to uri="direct:splitStores" />
</route>

我希望能够触发此部分进行测试。

因此,如果我可以停止/开始该部分,它可能会触发它。

这促使我尝试......

http://localhost:8080/gateway047/jolokia/exec/org.apache.camel:context=VCM047,type=routes,name=%22VCM047_store_list_schedule%22/stop()

但这永远不会返回。

任何人都可以提供一些关于如何通过 Jolokia 停止/开始 Camel 区的建议吗?

最佳答案

Camel ManagedBean 上的 stop() 操作是一个 void 操作,因此您不应期望有任何返回值。要了解当前状态,您可以再次 getState()。

如果您遇到停止本身的问题(例如挂起),您始终可以使用直接 JMX 客户端(如 JVisualVM)来更好地支持 JMX 操作。与 Jolokia(JMX 的 HTTP 包装器)不同,独立工具可以为您提供更多支持,帮助您发现可用的操作,并消除您通过 HTTP 可能遇到的某些复杂情况。

关于java - 如何使用 Jolokia 启动通常由计时器触发的路段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28902940/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com