Hello Ivan, from the log it seems you're running it locally via Camel JBang. Have you provided the correct parameter to the kamelet directory [1]? Also, it seems you're using twice the same wiretap endpoint. I am not familiar with the wiretap components and not sure if that could be the reason of the failure as well.
Regards, Pasquale. [1] https://camel.apache.org/manual/camel-jbang.html#_running_local_kamelets On Sun, Apr 23, 2023 at 8:47 PM Ivan Tam <ivan....@bd.com.invalid> wrote: > 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 > optoutbygr...@bd.com. [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. >