Hi,
I have a camel route below containing a wiretap to a kamelet. Its behavior is
not deterministic. It seems running fine the first time, but another time I saw
it threw the below exceptions running it.
Are there any issues with my route setup and my kamelet below?
from("timer:abc?period=10000")
.setBody().constant("1")
.setHeader("main_cid").constant("1234")
.wireTap("kamelet:test-sink?cid=${header.main_cid}")
.setHeader("main_cid").constant("2345")
.wireTap("kamelet:test-sink?cid=${header.main_cid}")
.setBody().constant("2")
.log("${body}");
apiVersion: camel.apache.org/v1alpha1
kind: Kamelet
metadata:
name: test-sink
annotation:
camel.apache.org/kamelet.support.level: "Stable"
labels:
camel.apache.org/kamelet.support.type: "sink"
spec:
definition:
title: "Test Sink"
description: |-
Blah
type: object
properties:
cid:
title: cid
description: blah
type: string
types:
out:
mediaType: text/plain
dependencies:
- "camel-core"
template:
from:
uri: "kamelet:source"
parameters:
cid: "{{cid}}"
steps:
- delay:
constant: 2000
- set-header:
name: "c_id"
simple: "{{cid}}"
- log: "in test-sink, ${header.c_id} - ${body}"
2023-04-23 11:33:58.277 INFO 1493992 --- [ main]
org.apache.camel.main.MainSupport : Apache Camel (JBang) 3.20.1 is
starting
2023-04-23 11:33:58.427 INFO 1493992 --- [ main]
org.apache.camel.main.MainSupport : Using Java 17.0.6 with PID 1493992.
Started by devname in /home/devname/examples/test-kamelet
2023-04-23 11:33:58.439 INFO 1493992 --- [ main]
he.camel.cli.connector.LocalCliConnector : Camel CLI enabled (local)
2023-04-23 11:34:00.172 INFO 1493992 --- [ main]
e.camel.impl.engine.AbstractCamelContext : Apache Camel 3.20.1 (Hello) is
starting
2023-04-23 11:34:00.329 INFO 1493992 --- [ main]
e.camel.impl.engine.AbstractCamelContext : Routes startup (started:1)
2023-04-23 11:34:00.329 INFO 1493992 --- [ main]
e.camel.impl.engine.AbstractCamelContext : Started route1 (timer://abc)
2023-04-23 11:34:00.329 INFO 1493992 --- [ main]
e.camel.impl.engine.AbstractCamelContext : Apache Camel 3.20.1 (Hello) started
in 354ms (build:112ms init:86ms start:156ms JVM-uptime:2s)
2023-04-23 11:34:01.321 INFO 1493992 --- [4 - timer://abc] Hello.java:44
: hello
2023-04-23 11:34:01.328 INFO 1493992 --- [4 - timer://abc] Hello.java:65
: 2
2023-04-23 11:34:01.364 ERROR 1493992 --- [ad #6 - WireTap]
ocessor.errorhandler.DefaultErrorHandler : Failed delivery for (MessageId:
D6EB749C57092C4-0000000000000001 on ExchangeId:
D6EB749C57092C4-0000000000000001). Exhausted after delivery attempt: 1 caught:
org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint:
kamelet://test-sink?cid=1234 due to:
org.apache.camel.component.kamelet.KameletNotFoundException: Kamelet with id
test-sink not found in locations:
classpath:/kamelets,github:apache:camel-kamelets/kamelets,file:test-sink.kamelet.yaml
Message History
---------------------------------------------------------------------------------------------------------------------------------------
Source ID
Processor Elapsed (ms)
Hello.java:43 route1/route1
from[timer://abc?period=10000] 106795499
Hello.java:44 route1/log1 log
6
Hello.java:46 route1/setBody1
setBody[constant{1}] 0
Hello.java:48 route1/setHeader1
setHeader[main_cid] 0
Hello.java:50 route1/wireTap1
wireTap[kamelet:test-sink?cid=${header.main_cid}] 2
Stacktrace
---------------------------------------------------------------------------------------------------------------------------------------
org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint:
kamelet://test-sink?cid=1234 due to:
org.apache.camel.component.kamelet.KameletNotFoundException: Kamelet with id
test-sink not found in locations:
classpath:/kamelets,github:apache:camel-kamelets/kamelets,file:test-sink.kamelet.yaml
at
org.apache.camel.impl.engine.AbstractCamelContext.doGetEndpoint(AbstractCamelContext.java:1008)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.getEndpoint(AbstractCamelContext.java:899)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.support.CamelContextHelper.getMandatoryEndpoint(CamelContextHelper.java:77)
~[camel-support-3.20.1.jar:3.20.1]
at
org.apache.camel.support.ExchangeHelper.resolveEndpoint(ExchangeHelper.java:115)
~[camel-support-3.20.1.jar:3.20.1]
at
org.apache.camel.support.ExchangeHelper.resolveEndpoint(ExchangeHelper.java:94)
~[camel-support-3.20.1.jar:3.20.1]
at
org.apache.camel.processor.SendDynamicProcessor.resolveEndpoint(SendDynamicProcessor.java:296)
~[camel-core-processor-3.20.1.jar:3.20.1]
at
org.apache.camel.processor.SendDynamicProcessor.process(SendDynamicProcessor.java:157)
~[camel-core-processor-3.20.1.jar:3.20.1]
at
org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$SimpleTask.run(RedeliveryErrorHandler.java:477)
~[camel-core-processor-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.schedule(DefaultReactiveExecutor.java:181)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.DefaultReactiveExecutor.scheduleMain(DefaultReactiveExecutor.java:59)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.processor.errorhandler.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:217)
~[camel-core-processor-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.CamelInternalProcessor.process(CamelInternalProcessor.java:392)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.processor.WireTapProcessor$WireTapTask.run(WireTapProcessor.java:118)
~[camel-core-processor-3.20.1.jar:3.20.1]
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
~[?:?]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
~[?:?]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: org.apache.camel.RuntimeCamelException:
org.apache.camel.component.kamelet.KameletNotFoundException: Kamelet with id
test-sink not found in locations:
classpath:/kamelets,github:apache:camel-kamelets/kamelets,file:test-sink.kamelet.yaml
at
org.apache.camel.RuntimeCamelException.wrapRuntimeException(RuntimeCamelException.java:66)
~[camel-api-3.20.1.jar:3.20.1]
at
org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.track(KameletComponent.java:450)
~[camel-kamelet-3.20.1.jar:3.20.1]
at
org.apache.camel.component.kamelet.KameletComponent$1.doInit(KameletComponent.java:160)
~[camel-kamelet-3.20.1.jar:3.20.1]
at
org.apache.camel.support.service.BaseService.init(BaseService.java:83)
~[camel-api-3.20.1.jar:3.20.1]
at
org.apache.camel.support.service.ServiceHelper.initService(ServiceHelper.java:84)
~[camel-api-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.internalAddService(AbstractCamelContext.java:1602)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.addService(AbstractCamelContext.java:1543)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.addService(AbstractCamelContext.java:1538)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.addService(AbstractCamelContext.java:1533)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.doGetEndpoint(AbstractCamelContext.java:992)
~[camel-base-engine-3.20.1.jar:3.20.1]
... 17 more
Caused by: org.apache.camel.component.kamelet.KameletNotFoundException: Kamelet
with id test-sink not found in locations:
classpath:/kamelets,github:apache:camel-kamelets/kamelets,file:test-sink.kamelet.yaml
at
org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.createRouteForEndpoint(KameletComponent.java:421)
~[camel-kamelet-3.20.1.jar:3.20.1]
at
org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.track(KameletComponent.java:448)
~[camel-kamelet-3.20.1.jar:3.20.1]
at
org.apache.camel.component.kamelet.KameletComponent$1.doInit(KameletComponent.java:160)
~[camel-kamelet-3.20.1.jar:3.20.1]
at
org.apache.camel.support.service.BaseService.init(BaseService.java:83)
~[camel-api-3.20.1.jar:3.20.1]
at
org.apache.camel.support.service.ServiceHelper.initService(ServiceHelper.java:84)
~[camel-api-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.internalAddService(AbstractCamelContext.java:1602)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.addService(AbstractCamelContext.java:1543)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.addService(AbstractCamelContext.java:1538)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.addService(AbstractCamelContext.java:1533)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.doGetEndpoint(AbstractCamelContext.java:992)
~[camel-base-engine-3.20.1.jar:3.20.1]
... 17 more
Caused by: org.apache.camel.FailedToStartRouteException: Failed to start route
test-sink-1 because of Multiple consumers for the same endpoint is not allowed:
kamelet://source?routeId=test-sink-1
at
org.apache.camel.impl.engine.InternalRouteStartupManager.doStartOrResumeRouteConsumers(InternalRouteStartupManager.java:376)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.InternalRouteStartupManager.doStartRouteConsumers(InternalRouteStartupManager.java:319)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.InternalRouteStartupManager.safelyStartRouteServices(InternalRouteStartupManager.java:213)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.InternalRouteStartupManager.safelyStartRouteServices(InternalRouteStartupManager.java:240)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.startRouteService(AbstractCamelContext.java:3786)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:941)
~[camel-core-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.DefaultModel.addRouteDefinitions(DefaultModel.java:249)
~[camel-core-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.DefaultModel.addRouteDefinition(DefaultModel.java:255)
~[camel-core-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.DefaultModel.addRouteFromTemplate(DefaultModel.java:512)
~[camel-core-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.DefaultModel.addRouteFromTemplate(DefaultModel.java:367)
~[camel-core-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.DefaultCamelContext.addRouteFromTemplate(DefaultCamelContext.java:474)
~[camel-core-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.createRouteForEndpoint(KameletComponent.java:409)
~[camel-kamelet-3.20.1.jar:3.20.1]
at
org.apache.camel.component.kamelet.KameletComponent$LifecycleHandler.track(KameletComponent.java:448)
~[camel-kamelet-3.20.1.jar:3.20.1]
at
org.apache.camel.component.kamelet.KameletComponent$1.doInit(KameletComponent.java:160)
~[camel-kamelet-3.20.1.jar:3.20.1]
at
org.apache.camel.support.service.BaseService.init(BaseService.java:83)
~[camel-api-3.20.1.jar:3.20.1]
at
org.apache.camel.support.service.ServiceHelper.initService(ServiceHelper.java:84)
~[camel-api-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.internalAddService(AbstractCamelContext.java:1602)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.addService(AbstractCamelContext.java:1543)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.addService(AbstractCamelContext.java:1538)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.addService(AbstractCamelContext.java:1533)
~[camel-base-engine-3.20.1.jar:3.20.1]
at
org.apache.camel.impl.engine.AbstractCamelContext.doGetEndpoint(AbstractCamelContext.java:992)
~[camel-base-engine-3.20.1.jar:3.20.1]
... 17 more
Thanks,
Ivan
*******************************************************************
IMPORTANT MESSAGE FOR RECIPIENTS IN THE U.S.A.:
This message may constitute an advertisement of a BD group's products or
services or a solicitation of interest in them. If this is such a message and
you would like to opt out of receiving future advertisements or solicitations
from this BD group, please forward this e-mail to [email protected].
[BD.v1.0]
*******************************************************************
This message (which includes any attachments) is intended only for the
designated recipient(s). It may contain confidential or proprietary information
and may be subject to the attorney-client privilege or other confidentiality
protections. If you are not a designated recipient, you may not review, use,
copy or distribute this message. If you received this in error, please notify
the sender by reply e-mail and delete this message. Thank you.
*******************************************************************
Corporate Headquarters Mailing Address: BD (Becton, Dickinson and Company) 1
Becton Drive Franklin Lakes, NJ 07417 U.S.A.