[
https://issues.apache.org/jira/browse/CAMEL-26718?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Work on CAMEL-26718 started by Claus Ibsen.
-------------------------------------------
> camel-chaos - in= narrows a rule to the sends and steps of a route, and a
> route can fail or be slow at its entry
> ----------------------------------------------------------------------------------------------------------------
>
> Key: CAMEL-26718
> URL: https://issues.apache.org/jira/browse/CAMEL-26718
> Project: Camel
> Issue Type: Improvement
> Components: camel-jbang
> Reporter: Claus Ibsen
> Assignee: Claus Ibsen
> Priority: Major
> Fix For: 4.24.0
>
>
> Step 3 of the stage 2 order decided on CAMEL-26607 (S2-2, then S2-1).
> h3. in=, the sends and steps of a route (S2-2)
> * A second selector that narrows the target of a rule to a route:
> {{endpoint=http:* in=orders error status=503}}, {{step=* in=orders delay
> duration=500ms}}, {{component=kafka in=order* drop}}.
> * {{in=}} is the route of the unit of work, not the routes it calls
> ({{direct:}}, {{seda:}}); a pattern ({{in=order*}}) takes more routes. With
> {{at=poll}} it is the route whose consumer polls.
> * It is checked before the rate, so {{rate}} and {{until=<count>}} count only
> the matches in those routes.
> * Not with {{route=}} (the route is the target already), {{stall}} or
> {{lifecycle}}.
> * The check warns when no route matches {{in=}}, or when the target matches
> nothing inside those routes. The hooks that can fire (CAMEL-26717) look only
> at those routes.
> * The rule in plain words says it: "fail half of the sends to http:stock* in
> route orders with HTTP status 503".
> * The chaos model gets the option (pick: routes), and a recipe "The sends of
> the route fail".
> h3. Errors and delays at the route entry (S2-1)
> * {{route=orders error rate=0.05}}, {{route=orders error
> exception=java.net.ConnectException}}, {{route=orders delay duration=2s}}.
> * The route policy decides at the entry, once per exchange, and the exchange
> fails (or waits) at the first step of the route. The route's error handling
> applies (onException, redelivery, the dead letter channel), as for a real
> failure inside the route.
> * When the route does not handle the error, the consumer sees it: a JMS
> rollback, the file left in place, an HTTP 500. The guide says so.
> * A delay at the entry runs on the consumer thread, so it slows the consumer
> down; the guide says so too.
> * No {{drop}} at the entry, and no {{at=consumer}}.
> * Recipes "The route fails" and "The route is slow".
> _Claude Code on behalf of Claus Ibsen_
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)